码迷,mamicode.com
首页 > 其他好文 > 详细

类型转换

时间:2019-06-08 22:56:29      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:运行   char   main   ima   mic   code   image   输出   类型   

#include<stdio.h>
int main()
{
	char a = 100;
	char b = 200;
	char c = a+b;
	printf("%d %d\n",c,a+b);
	//printf("%d\n",b);
	
	unsigned char x = 100;
	unsigned char y = 200;
	unsigned char z = a+b;
	printf("%d %d\n",z,x+y);
	//printf("%d\n",y);
	
	return 0;
 } 

 运行结果:

 技术图片

      由于是char类型其范围是 -128~127,char b = 200;超出其范围,就变成了成了负数-56,所以输出就变成了44,然而第二个是无符号的char类型,其范围是0~255,所以y的值么有超出范围,所以z还是输出44,由于是%d输出,x+y 就被转成了更高级的int型输出,并且x,y 赋值是合法的,也么有超出范围,所以输出就是300.

(个人见解,有待完善)

 

类型转换

标签:运行   char   main   ima   mic   code   image   输出   类型   

原文地址:https://www.cnblogs.com/128-cdy/p/10991983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!