| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 325 人关注过本帖
标题:字符赋值问题求答案!!!
只看楼主 加入收藏
洁士铭
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-12-25
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:3 
字符赋值问题求答案!!!
#include<stdio.h>
int main()
{
    char a='65';
    printf("%c\n",a);
    return 0;
}

为什么这个程序执行之后结果是5不是6!!!
搜索更多相关主题的帖子: return 
2014-01-06 15:56
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:3 
C 使用int类型来处理字符常量,而不是 char 类型。
8位表示一个ASCII码,也就是一个字符
而在32位内存单元中,char 类型最多能放 4 个 8 位,也就是定义时单引号内最多只能放四个字符,多了就会出错

你可以定义成这样调试下  char a='12345';

char a='65';用这种定义方法,字符变量只能得到字符常量的最后 8 位。也就是 5

三十年河东,三十年河西,莫欺少年穷!
2014-01-06 16:40
yangzhenhao9
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2013-11-27
收藏
得分:3 
回复 2楼 韶志
表示没看懂,‘65’怎么解释  先6后5?
2014-01-06 23:14
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:3 
char a='65';

又不是考试题目  给一个字符变量 赋值一个字符串  有什么意义呢

DO IT YOURSELF !
2014-01-07 08:11
快速回复:字符赋值问题求答案!!!
数据加载中...
 
   



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

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