Rumah >pembangunan bahagian belakang >C++ >Dalam bahasa C, apakah yang berlaku jika fungsi dipanggil sebelum ia diisytiharkan?

Dalam bahasa C, apakah yang berlaku jika fungsi dipanggil sebelum ia diisytiharkan?

WBOY
WBOYke hadapan
2023-08-27 19:21:061140semak imbas

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.

Contoh Kod

#include<stdio.h>
main() {
   printf("The returned value: %d</p><p>", function);
}
char function() {
   return &#39;T&#39;; //return T as character
}

Output

[Error] conflicting types for &#39;function&#39;
[Note] previous implicit declaration of &#39;function&#39; was here

Sekarang jika jenis pulangan adalah integer maka ia akan berfungsi.

Contoh kod

#include<stdio.h>
main() {
   printf("The returned value: %d</p><p>", function());
}
int function() {
   return 86; //return an integer value
}

Output

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!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:Alamat fungsi dalam C atau C++Artikel seterusnya:Alamat fungsi dalam C atau C++