c语言for后面大括号的区别
intmain(){for(inti=0;i<5;i++)inta=20;}这样在mac下面编译出错但是加了大括号以后没错intmain(){for(inti=0;i<5...
int main(){
for(int i=0;i<5;i++)
int a = 20;
}
这样在mac下面编译出错
但是加了大括号以后没错
int main(){
for(int i=0;i<5;i++){
int a = 20;
}
}
求大神解惑! 展开
for(int i=0;i<5;i++)
int a = 20;
}
这样在mac下面编译出错
但是加了大括号以后没错
int main(){
for(int i=0;i<5;i++){
int a = 20;
}
}
求大神解惑! 展开
7个回答
展开全部
一条语句不加,多条语句就加上,总之加了看起来舒服点,代码规范
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c语言在定义变量时,要求把所有变量定义语句提前,这就要求你的程序写成:
int main() { int a,i; for ( i=0;i<5;i++ ) a=20; }
实际上,C语言的变量作用域是依赖大括号的,离开了大括号范围,其中的局部变量就不起作用了;int main() { for ( int i=0;i<5;i++ ) { int a=20; } }之所以合法是在循环语句的大括号对中开设了临时变量a,循环结束后即会被放弃。
int main() { int a,i; for ( i=0;i<5;i++ ) a=20; }
实际上,C语言的变量作用域是依赖大括号的,离开了大括号范围,其中的局部变量就不起作用了;int main() { for ( int i=0;i<5;i++ ) { int a=20; } }之所以合法是在循环语句的大括号对中开设了临时变量a,循环结束后即会被放弃。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我没有mac,不能测试,你看看 去掉int 无 大括号 在mac下试试,如果没有错误则 表示mac下跟着语句时,要先定义变量才能赋值。
即这样:vc+6运行通过
int main(){
for(int i=0;i<5;i++)
int a = 20;
}
即这样:vc+6运行通过
int main(){
for(int i=0;i<5;i++)
int a = 20;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我们在编写C语言程序时需要频繁用到循环,而for循环后面的大括号,有时有,有时没有。
比如:
for(int i=0;i<10;i++){
......;
}
for(int i=0;i<10;i++)
printf("%d",i);
而for是否需要加大括号跟for循环的作用域有关。
若不加大括号,它只包含下面一条语句,若加括号后则包含括号内所有语句。
即如果循环只有一句话,可以不加大括号,多句话循环就需要扩上括号,另外一点,便是编译器的区别,不同的编译器和编译环境会影响到编译语言的语法,编译方法也会有不同的规范。
比如:
for(int i=0;i<10;i++){
......;
}
for(int i=0;i<10;i++)
printf("%d",i);
而for是否需要加大括号跟for循环的作用域有关。
若不加大括号,它只包含下面一条语句,若加括号后则包含括号内所有语句。
即如果循环只有一句话,可以不加大括号,多句话循环就需要扩上括号,另外一点,便是编译器的区别,不同的编译器和编译环境会影响到编译语言的语法,编译方法也会有不同的规范。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询