c 语言 变量声明问题!

来源:百度知道 编辑:UC知道 时间:2024/05/28 16:32:05
c语言中的变量声明一定要放在所有的代码前?还是只要在使用某个变量前声明即可??
#include<stdio.h>
int
main(void)
{
int x;

printf("input a number:");
scanf("%d",&x);
int b;
b=x;
printf("%d\n",x);
printf("%d\n",b);
return(0);
}
这个程序就是在使用时才声明!晕,错了!
wuwowuzhi你的说法不对,现在很多的书都有int main{void}这种结构,
上面这个程序的结构我是用VC++6.0来编译的,编译不过啊!
把int b;放在int x;之后就可以啊!

main(void)也行

如果是C编译器声明必须放到前面,未出现执行语句之前。

如果是C++编译器则用之前声明就行了,放哪里都行。

和你变量没有关系,是你的main()函数错了,主函数不能用void输入,括号里面什么都不用加就行了,
int main(){}
或者
int main(int argc, char* argv[])

纯C的变量声明好象必须在每个代码块的最开始,通俗的说就是每个“{”符号之后。
不过用C++编译器的话好象就没那么严格了,只要在使用变量之前就可以。

问题在于,标准的C编译器是要求定义必须在程序开头定义的,但是在C++中,这个要求不是很严格,也就是说在程序中也可以定义变量。所以,你这个程序要是在TC环境下编译的话,肯定是错的,但是在C++下,则是可以通过的。

将int b;这句放在int x;后面试试