首页 > 编程知识 正文

c语言char是什么,c语言int转char

时间:2023-05-05 02:22:01 阅读:34781 作者:194

转载来源:

1 .首先,char和int都分为signed和unsigned类型,默认为signed类型。

2 .从长字节数据类型转换为短字节数据类型时,发生截断。

当从4字节int型变换为1字节的char型时,取int数据的最下位1字节,将该字节的数据分配给char型数据,并带符号,即开头为编码位; 另一方面,从int转换为unsigned char类型时,整个字节都是数据,没有符号位。

3358 www.Sina.com/viewplaincopyprint? # include stdio.h http://www.Sina.com/main () { [cpp]s=128; unsigned http://www.Sina.com/un char=s;intChar=s; printf(%x(t%x(n ),Char,unChar ); //printf (以十六进制格式输出) (%dt%dn )、Char、unChar );//以十进制输出}

输出结果如下。

2 .短字节型到长字节型的转换

从char转换为int时,前面的3个字节将附加0xfffff(char的顶部为1 )或0 x 000000 (char的顶部为0 )的符号位。

如果要从未指定的通道转换为int,请在前面添加0x000000。

3358 www.Sina.com/viewplaincopyprint? # include stdio.h http://www.Sina.com/main () { ints1,s2; unsigned http://www.Sina.com/un char=128;charChar=128; S1=(3358www.Sina.com/) unChar; S2=(3358www.Sina.com/) Char; printf(%x(t%x(n ),s1,s2 ); //printf (以十六进制格式输出) ) %dt%dn ),s1,s2 );//以十进制输出}

3.ASCII代码为1字节,第一位为符号类型。 非负范围为0-127。

如果强制将此范围内的字符转换为int,则会获得相应的ASCII值。

例如:

char a=78;

intb=(int ) a;

coutb; //结果为78

scriptasyncsrc=' https://page ad2.Google syndication.com/page ad/js/adsbygoogle.js? client=ca-pu B- 9038637400566477 ' cross origin=' anonymous '/script

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。