c的心脏——函数
书上说过函数是c语言的灵魂和心脏c语言只支持一种风格的函数——即外部函数。函数体内不能再定义函数
如:
int f(void) //错误
{
int f1(void)
{
......
}
}
声明函数的位置,
声明函数位置的不同,其作用范围也不同,这主要分为函数内部声明(也称为局部声明)和函数外部声明(如果放在最前端main()函数上又称为全局声明)两种情况
所谓函数内部声明,就是指将声明函数的语句放在一个函数体内,这种方式声明的函数仅可在内部
被调用。
下面的代码演示了内部声明函数的用法。
#include <stdio.h>
int main() //主函数
{
void game_begin(void); //在主函数内声明game_begin()函数
game_begin(); //调用game_begin()函数,由于它已经声明过,因此可以运行
game_end(); //调用game_end()函数,由于它未声明,因此将导致错误
return 0;
}
void game_begin(void) { //game_begin()函数的定义代码
printf("游戏开始.\n祝你好运!\n");
}
void game_end(void) { //game_end()函数的定义代码
printf("游戏结束.\n");
}
函数外部声明:
#include <stdio.h>
void game_begin(void);
void game_end(void);
int main()
{
game_begin(); //调用函数game_begin()
game_end(); //调用函数game_end()
return 0;
}
void game_begin(void) { //game_begin()函数的定义代码
printf("游戏开始.\n祝你好运!\n");
}
void game_end(void) { //game_end()函数的定义代码
printf("游戏结束.\n");
}
我想问外部声明函数和内部声明函数有什么不同呢???两者之间的调用范围是不是前者有限制,后者没有?
我还是不太懂,请大虾道露天机,谢谢各位了