- 论坛徽章:
- 1
|
main()
{
int i=1;
printf("%d\n",i);
int j;
if(i) {
j=2;
printf("%d\n",j);
}
}
我编译这段代码的时候就会出错
# gcc test.c
test.c: In function 'main':
test.c:5: parse error before 'int'
test.c:7: 'j' undeclared (first use in this function)
test.c:7: (Each undeclared identifier is reported only once)
test.c:7: for each function it appears in.)
这是说我没定义j的类型,但如果我把第4行去掉,也就是在最开始定义j就没有错误了。
我的毕业设计要用c语言,可现在对c还不了解,是不是c语言必须在最开始就把所有的变量都定义了,不然就会出错?
另外我改成这样就不会有错了:
main()
{
int i=1;
printf("%d\n",i);
if(i) {
int j;
printf("%d\n",j);
}
}
但这样就会出同样的错误:
main()
{
int i=1;
printf("%d\n",i);
if(i) {
printf("%d\n",i);
int j;
printf("%d\n",j);
}
}
真是让人郁闷呀``````
麻烦大家给我讲讲这是怎么回事!谢谢! |
|