C语言函数声明的作用,为什么在使用前要声明?

为什么要在调用前声明?因为编译器不会一整个代码先检索并保存函数,回头再看其它代码,声明函数①是为了编译器可以检查错误,你的参数类型和个数有没有对;②调用函数时怎么对待返回值或参数,比如返回值是float,而接收变量是int型,两个类型不同,float add(int,int );
int a=add(10,8);如果返回值是float还得通过cvttss2si指令把浮点寄存器xmm的值强转为int型给eax才能赋给a,汇编代码不同。声明函数就会在符号表写入数据:函数名、参数个数、返回值和对应的地址。定义函数就包含了声明函数。

你可能感兴趣的:(c语言)