c语言 自定义函数在 main 声明与在main前面声明有什么不同?
#include "stdio.h"int i = 0;
void add(void)
{
i += 1;
printf("add: %d\n", i);
}
void add_2(void)
{
i = 1;
printf("add_2: %d\n", i);
}
int main(void)
{
printf("%d ",i);
add();
printf("%d ",i);
add_2();
printf("%d ",i);
}
运行结果:
/*
0 add: 1
1 add_2: 1
1
*/
与
main里面声明自定义函数
#include "stdio.h"
int i = 0;
int main(void)
{
printf("%d",i);
void add(void);
printf("%d",i);
void add_2(void);
printf("%d",i);
}
void add(void)
{
i += 1;
printf("add: %d\n", i);
}
void add_2(void)
{
i = 1;
printf("add_2: %d\n", i);
}
运行结果为:
/*
000
*/
来大神指教