| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2027 人关注过本帖
标题:有个编程问题,以前没发现,在写一个程序中发现的
取消只看楼主 加入收藏
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:5 
有个编程问题,以前没发现,在写一个程序中发现的
举个简单的例子,看下面这个程序
#include <stdio.h>
main(void)
{
   int a[10] = {1,2,3,4,5,6,7,8};
   for (int i = 7; i >= 0; i--)
   {
      printf("%d ",a[i]);
   }
   return 0;
}
很简单的数组倒序输出,但是,把for循环中i的类型改成size_t 程序就会出错,想问问大神,为什么,正序输出int和size_t可以相互替换,而倒序输出就不可以
搜索更多相关主题的帖子: return include 
2015-12-29 15:47
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
收藏
得分:0 
谢谢好心人帮我解答一下,这个问题已经找很长时间了
2015-12-29 15:48
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
收藏
得分:0 
回复 4楼 rjsp
能说的稍微明白点吗,不太理解,反向迭代器是什么东东
2015-12-29 16:04
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
收藏
得分:0 
回复 5楼 wp231957
这个我明白,但是正序输出没问题,倒序就有问题
2015-12-29 16:05
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
收藏
得分:0 
回复 8楼 rjsp
没错,但是,我第一个i值是7,符合这个规定
2015-12-29 19:39
foxeer
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:107
专家分:136
注 册:2015-12-29
收藏
得分:0 
回复 9楼 embed_xuel
我觉得你说的有道理,这点我确实没想到,i>=0只是个判断语句,只是判断是否进行下一个循环,size_t是不能为负数的,所以当减到小于零时程序出错了,谢谢
2015-12-29 19:43
快速回复:有个编程问题,以前没发现,在写一个程序中发现的
数据加载中...
 
   



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

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