「已注销」 2015-10-28 09:50 采纳率: 100%
浏览 2380

for循环中定义的变量 在程序的其他地方无法使用

RT
code
运行环境:win7 dev c++

 # include <stdio.h>
# include <stdlib.h>
# include <windows.h>
int main ()

{

    for(int i = 1;i<=100;i++)
    {
        printf("%d\n",i);
    }

    printf("%d\n",i);       
    return 0;
} 

程序会报错关于i的值的问题
[Error] name lookup of 'i' changed for ISO 'for' scoping [-fpermissive]
Note
英语渣 用百度翻译出一堆看出懂的东西
[Error] lookup name of'i'改变 为 ISO'for'scoping [-fpermissive]
[Note] ( 如果 你 使用'-fpermissive'G++ 将 接受 你 的 代码 )
乱七八糟的 好像是在for循环中定义的变量i在printf里面不能使用 是这样吗?
我在for循环外面又定义了一次变量i 结果就可以在printf里面使用了.

  • 写回答

3条回答 默认 最新

  • wohenni0931 2015-10-28 09:55
    关注

    变量的作用域问题,一般以{}为界

    评论

报告相同问题?