| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 356 人关注过本帖
标题:字符与整形转换问题?
收藏  订阅  推荐  打印 
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8
字符与整形转换问题?

#include "stdio.h"
main()
{char a,b;
a=1;
b='1';

printf("%c,%c",a,b);
}
分别输出多少?
为什么呢?格式控制符不都是%c么?都是按照字符输出的么?
不解

搜索更多相关主题的帖子: 整形  字符  
2007-11-17 16:16
qiang5219
Rank: 2
等级:注册会员
帖子:83
积分:1008
注册:2007-9-10

没有看明白你要说的什么意思??

你都定义了a,b 为char,输出也为字符,

那来的字符和整型的转换啊??
2007-11-17 16:29
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8

我就是这个意思,为什么输出格式是%c  但是最后输出的b值是1呢?
2007-11-17 16:30
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8

'1'和1
有什么区别?一个是整形一个是字符吧,但是都按照ascii码存储是不是可以认为就没区别?
2007-11-17 16:32
刹那公子
Rank: 1
等级:新手上路
帖子:34
积分:440
注册:2007-9-26

a=1,这个1被认为是ASCII码
b='1',这个'1'被认为是字符

2007-11-17 16:32
刹那公子
Rank: 1
等级:新手上路
帖子:34
积分:440
注册:2007-9-26

楼主,b的值的确是1,但这个1不是整型,而是字符型,它的ASCII码是49

2007-11-17 16:36
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8

a=1  中1存储在内存中还是以asc码存的吧? 也就是49?
a='1' 不也是 49么?
我把b用%d格式输出就输出了49.
2007-11-17 16:37
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8

为什么两个asc值一样的数用同样的格式输出却不一样呢?
2007-11-17 16:38
qiang5219
Rank: 2
等级:注册会员
帖子:83
积分:1008
注册:2007-9-10

你定义的是
char a,b;
a=1;
b='1';

而a=1 ,中的1 不是字符啊?
2007-11-17 16:43
dousao
Rank: 3Rank: 3
等级:中级会员
帖子:194
积分:2102
注册:2007-11-8

恼人呀!!!!!
2007-11-17 16:45
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.048374 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved