Rumah >pembangunan bahagian belakang >C++ >Dalam bahasa C, apakah yang berlaku jika fungsi dipanggil sebelum ia diisytiharkan?
Jika kita tidak menggunakan beberapa prototaip fungsi dan badan fungsi diisytiharkan di beberapa bahagian selepas pernyataan yang memanggil fungsi tersebut. Dalam kes ini, pengkompil menganggap bahawa jenis pulangan lalai ialah integer. Tetapi jika fungsi mengembalikan nilai jenis lain, ralat akan dikembalikan. Ini berfungsi dengan baik jika jenis pemulangan juga merupakan integer, kadangkala ia mungkin menjana beberapa amaran.
#include<stdio.h> main() { printf("The returned value: %d</p><p>", function); } char function() { return 'T'; //return T as character }
[Error] conflicting types for 'function' [Note] previous implicit declaration of 'function' was here
Sekarang jika jenis pulangan adalah integer maka ia akan berfungsi.
#include<stdio.h> main() { printf("The returned value: %d</p><p>", function()); } int function() { return 86; //return an integer value }
The returned value: 86
Atas ialah kandungan terperinci Dalam bahasa C, apakah yang berlaku jika fungsi dipanggil sebelum ia diisytiharkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!