标题:变量声明位置不同,但作用域一样,为什么VC编译结果不一样
只看楼主
peng880610
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:128
专家分:123
注 册:2017-3-29
结帖率:100%
已结贴  问题点数:10 回复次数:5 
变量声明位置不同,但作用域一样,为什么VC编译结果不一样
#include <stdio.h>
int main()
{
    int index=0;
    char* pA[7]={"Sunday","Monday","Tuesday","Wednsday","Thursday","Friday","Saturday"};
    printf("今天是一周的第几天?\n");
    //int index=0;
    scanf("%d",&index);
    printf("今天是%s",pA[index]);
    return 0;
}
上面代码,如果我把index定义在注释的那里,编译就会报错,提示'index' : undeclared identifier
哪位大神能帮忙说明下么?
搜索更多相关主题的帖子: return include 
2017-06-16 23:20
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
得分:5 
vc估计连C89标准都支持不全。
因此,用VC写C代码,变量的定义必须在一个函数开始的地方。

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-06-16 23:53
peng880610
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:128
专家分:123
注 册:2017-3-29
得分:0 
回复 2楼 renkejun1942
原来是VC的支持问题。还有一个for循环,for(int i=0;i<10;i++),int i;还必须定义在这个循环的上面,要不然就报错,也是这种问题吗?
如果一个程序有两个以上的for循环,那int i,该怎么定义,还是说,两个循环之间只能定义不同的变量吗?
int i;
for(i=0;i<10;i++);

for(i=0;i<9;i++);
这两个循环可以这样编译吗?
2017-06-17 00:04
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
得分:0 
回复 3楼 peng880610
改个变量不就行了。
定义两个变量能有多麻烦。

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-06-17 00:07
peng880610
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:128
专家分:123
注 册:2017-3-29
得分:0 
回复 4楼 renkejun1942
也是,想学好,还是得勤快点
2017-06-17 00:12
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:5 
以下是引用peng880610在2017-6-17 00:04:25的发言:

原来是VC的支持问题。还有一个for循环,for(int i=0;i<10;i++),int i;还必须定义在这个循环的上面,要不然就报错,也是这种问题吗?
如果一个程序有两个以上的for循环,那int i,该怎么定义,还是说,两个循环之间只能定义不同的变量吗?
int i;
for(i=0;i<10;i++);
 
for(i=0;i<9;i++);
这两个循环可以这样编译吗?
如果你的循环自增变量的作用仅仅是计数器的话

那么N个循环都可以使用一个变量 没有任何问题 没有任何的二义性 也不会100个循环设置100个变量而显得乱

DO IT YOURSELF !
2017-06-17 16:37



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-478668-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.083621 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved