35-C语言的类型怎么转换?

类型转换:

 显示转换:
 隐式转换:在同一个运算符中,操作数类型一样
    1.整数默认为int,小数默认为double
	2.char,short,int ,long,float,long long,double 由窄变宽.
	3.标准规定相同类型,无符号比有符号宽(unsigned int) > (int)
	4.不同类型在进行运算时,窄类型向宽类型转换
     宽类型转窄类型,保留低数据
int main()
{
	char a = 1000;//‭0011 1110 1000‬->1110 1000->-0001 1000->-24
	int b = a;//-24
	printf("%d\n",b);
	return 0;
}


int main()
{
	char a = 255; //-128<=char<=127    1111 1111 ->-0000 0001->-1      ,-1
	char b = -1;//-1     1111 1111
	unsigned char c = 255;//0<=unsigned char <=255   ,255
	unsigned char d = -1;//1111 1111->  255   , 255
	int e = a;//-1
	int f = b;//-1
	int g = c;//255
	int h = d;//255
	printf("%d,%d,%d,%d\n",e,f,g,h);

	return 0;
}


int main()
{
	unsigned short a = 100;
	unsigned int b = 100;
	if(a > -1)//(unsigned short > int)  -> (int > int)  ->  100 > -1
	{
		printf("a>-1\n");
	}
	else
	{
		printf("a < -1\n");
	}
	if(b > -1)//(unsigned int > int) -> (unsigned int > unsigned int) ->(100 > 2^32-1)
	{
		printf("b>-1\n");
	}
	else
	{
		printf("b < -1\n");
	}
	return 0;
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林林林ZEYU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值