c++输出一些指定ASCII码的字符

使用的是vs2010
C++

在使用如下代码时,程序陷入死循环。请大佬们解答下

char a;//定义字符a
	for (a = 32; a <= 127; a++)//从ASCII为32开始到127,
        {
		cout << a << "  ";
	}

运行结果如图
运行结果如图

逐步调试时发现,当a从127到128时,发生了异常,如图

图片说明

图片说明

换成下面代码就啥事没有了

    char a;
	for (int aa = 32; aa <= 127; aa++)
	{
		a = aa;
		cout << a << "  ";
	}

求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解求解

#C/C++#
全部评论
你把第二个aa改成char,会是怎么样的?
点赞 回复 分享
发布于 2019-03-21 00:39
因为第一种你定义的是char直接进行循环,而char的范围是-128-127.当loop为127时,自增就变为-128,所以程序死循环
点赞 回复 分享
发布于 2019-03-20 23:35
第一个你应该执行a++了,但是char范围是-128~127所以输出-128?
点赞 回复 分享
发布于 2019-03-20 23:35

相关推荐

点赞 评论 收藏
分享
牛客小菜鸡66:boss里面,招人的叫老板,找工作的叫牛人
点赞 评论 收藏
分享
在看牛客的社畜很积极:身高体重那一行信息去掉,学校那一行的信息放上面,找半天都没找到你是哪个学校什么专业的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务