A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 墨子 中级黑马   /  2014-4-30 14:33  /  1269 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int main(void)
        {
                Unsigned char index = 0;
                While(index < 256)
                {
                        index +=index;
                        index++;
                }
                        Printf(“index value %d\n”,index);
                        Return 0;
        }
请帮忙指出哪里有问题,并且说明下原因

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

4 个回复

倒序浏览
本帖最后由 兰闻天 于 2014-4-30 14:51 编辑

int main(void)
        {
                Unsigned int index = 0;
                int x = 0;
                While(index < 256)
                {
                        x +=index;//这里应该定义一个新的变量,如果是用index +=index;例如index=1,这里的值就是2;到下面的index++,index的值就变成3,然后在进行循环,不能循环256次。
                        index++;
                }
                        //Printf(“index value %d\n”,index);
                        Printf(“index value %d\n”,x);
                        Return 0;
        }
你的意思应该是这个吧

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

回复 使用道具 举报
int main(void)
        {
                unsigned int index = 0;
                while(index < 256)
                {
                        index +=index;
                        index++;
                }
                        printf("index value %d\n",index);
                        return 0;
        }

将char改为int,你定义char=0  0是结束的意思,不可能定义一个结束符吧 。
回复 使用道具 举报
2楼回复补充:

char只是一个字节,不可能放超过127的数值,char index = 0;是可以的,但所有计算的时候index的最大值不能超过127
回复 使用道具 举报
  1. int main(void)
  2.         {
  3.                 Unsigned int index = 0;
  4.                 While(index < 256)
  5.                 {
  6.                         index +=index;
  7.                         index++;
  8.                 }
  9.                         Printf(“index value %d\n”,index);
  10.                         Return 0;
  11.         }
复制代码


char类型最多只能到127,所以改成int类型就行了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马