c语言把char转换成int

比如char型的(用getchar输入的)’0x04'怎么变成int型... 比如char型的(用getchar输入的)’0x04'怎么变成int型 展开
 我来答
xajhtnb
2013-12-18 · TA获得超过1101个赞
知道小有建树答主
回答量:765
采纳率:0%
帮助的人:504万
展开全部
'0x04';确实不对,第一,用单引号,不是一个数组,说是字符串也不对,c里面字符串不用第一号。单引号只能用在一个字符的身上。

转化的话,其实连强制转都不用
char c = 'a';
int a = c;
或者你打印的时候用:printf("%d",c);
就直接是十进制数字了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云亭潘靖柔
2019-06-06 · TA获得超过1205个赞
知道小有建树答主
回答量:1947
采纳率:100%
帮助的人:14.1万
展开全部
内容为数字的char,包含
0,1,2,3,4,5,6,7,8,9
共计10个字符。
这十个字符在存为字符型时,其存储值为对应的ascii码,而这些ascii码是连续的,且按照其本身数字的大小来排列。
这样就可以将字符值,减去起始ascii码值实现转为对应值的效果。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海雄风2009
2018-03-05 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2892万
展开全部
#include <stdio.h>

int main()
{
int i =0;
char n=NULL;
char str[10]={0};
while ( (n = getchar())!='\n')
{
str[i++] = n;
}
sprintf(str,"%d",&i);
printf("i[%d]\n",i);

return 0;
}
0x04
i[4]
Press any key to continue
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
摩羯眼睛会勾魂
推荐于2018-03-06 · 超过45用户采纳过TA的回答
知道答主
回答量:81
采纳率:0%
帮助的人:112万
展开全部
直接用强制类型转换就行了比如
char c ='0x04';
int i =(int)c;
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
与子如初见
2013-12-18 · TA获得超过1638个赞
知道小有建树答主
回答量:1117
采纳率:100%
帮助的人:804万
展开全部
getchar只接受一个字符,你还能输入0x04?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式