| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 803 人关注过本帖
标题:枚举输出小问题。
只看楼主 加入收藏
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
结帖率:91.67%
收藏
已结贴  问题点数:20 回复次数:11 
枚举输出小问题。
我之前一直觉得这样挺对呀,今天写程序用到,发现有问题,不知道自己哪里弄错了,我认为应该输出0 1 2 3 4,但编译都没过
现将问题简化,求解惑。。。大神勿喷。
当然,如果把x定义为int就可以运行,但枚举型为什么不行,书上的例题不都这么写?
程序代码:
#include <stdio.h>
#include<stdlib.h>
int main()
{
    enum fruit{apple, orange, banana, pineapple, pear};
    enum fruit  x;
    for(x=apple;x<=pear;x++)
        printf("%d ",x);
      system("pause");
      return 0;
      }
我的编译器提示
7 C:\Documents and Settings\Administrator\桌面\未命名5.cpp no `operator++(int)' declared for postfix `++', trying prefix operator instead
求解惑。。。


[ 本帖最后由 soulmate1023 于 2014-11-9 15:22 编辑 ]
搜索更多相关主题的帖子: orange apple color 
2014-11-09 15:14
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:4 
我这里用GCC没问题 不知道你用的是什么编译器 参数又是怎么设置的
2014-11-09 17:36
wssy213
Rank: 12Rank: 12Rank: 12
来 自:湖南
等 级:贵宾
威 望:10
帖 子:967
专家分:3703
注 册:2014-6-6
收藏
得分:4 
在循环退出时,x的值大于pear,超出了限制,这在C++中是不允许的,不过这应该跟编译器有关

坚持----------------------------------唯一的道路
shit ! ! !
2014-11-09 18:47
soulmate1023
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:256
专家分:831
注 册:2014-9-23
收藏
得分:0 
回复 2 楼 zklhp
我用的是DEV-C++,但不是DEV默认使用GCC编译器吗
2014-11-09 18:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:4 
居然有编译器能通过这样的代码?暴汗!

授人以渔,不授人以鱼。
2014-11-09 23:32
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:4 
枚举型变量不支持自增自减自乘自除等运算  楼主的代码在vs2010上无法通过编译

DO IT YOURSELF !
2014-11-10 11:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
回复 楼主 soulmate1023
你这个意图本身就是不正确的,在C/C++中,无法遍历枚举集合的元素。枚举只是一个集合,它是无序的,也可以是不连续的,用递增递减都不合法。我不知道有编译器能通过是怎么回事。

授人以渔,不授人以鱼。
2014-11-10 14:03
书生等待
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:280
专家分:689
注 册:2013-2-22
收藏
得分:4 
VS2010通过不了。
图片附件: 游客没有浏览图片的权限,请 登录注册
2014-11-10 17:09
书生等待
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:280
专家分:689
注 册:2013-2-22
收藏
得分:0 
如果把x定义为int,失去了你的本意,那只是让x自增,打印x
2014-11-10 17:14
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
枚举变量本质是int 如果这样想 可以自增

图片附件: 游客没有浏览图片的权限,请 登录注册

2014-11-10 17:35
快速回复:枚举输出小问题。
数据加载中...
 
   



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

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