7_24日C语言|整型提升相关介绍
来源:互联网 发布:amazing frog 知乎 编辑:程序博客网 时间:2024/06/05 20:38
整型提升
int main(){char a = 10;char b = 20;char c = a+b;return 0;}
分析:
char a 和 char b 属于截断;
对于char c = a+b 来说属于整型提升再截断
char a = -1;unsigned char b = -1;printf("%d\n",a);//-1printf("%d\n",b);//255
对于char a = -1;
10000000 00000000 00000000 00000001 //-1的原码
11111111 11111111 11111111 11111110//-1的反码
11111111 11111111 11111111 11111111//-1的补码
截断后:11111111//-1
整型提升:补符号位
11111111 11111111 11111111 11111111//-1
对于 unsigned char b = -1;
10000000 00000000 00000000 00000001 //-1的原码
11111111 11111111 11111111 11111110//-1的反码
11111111 11111111 11111111 11111111//-1的补码
截断后:11111111//-1
整型提升:补符号位,由于是无符号数补0
00000000 00000000 00000000 11111111//255
算数转换
当两者类型不同时,要将精度小的转为精度大的
float f =3.14;int num = f;// 精度丢失,隐式转换
N/A表示无结合性
memset(起始地址,初始化字符,字节数);//内存操作函数在string.h中
注意
//数组初始化for(i = 0; i<sizeof(arr)/sizeof(arr[0]); i++)arr[i]=1;//memset初始化memset(arr,1,sizeof(arr));//两者效果是不同的,因为数组每个元素是4个字节,memset是对每个字节进行赋值,但初始化为0效果是相同的
函数的调用,为形式参数开辟空间,形参的实例化;
传值调用,形参是实参的临时拷贝,形参的修改对实参无影响;
传址调用,形参是实参的临时拷贝,形参的修改对实参有影响;
实参主要有:变量,常量,表达式,函数等;
形参在调用结束后销毁;
- 7_24日C语言|整型提升相关介绍
- 【C语言】整型溢出和整型提升
- C 语言中的整型提升
- C语言进阶:整型提升
- C语言进阶:整型提升
- C语言中的整型提升(integral promotion)
- C语言 sizeof 整型提升 类型转换
- C语言拾遗(一):整型提升
- c语言数据类型之整型提升
- C语言中的整型提升(integral promotion)
- C语言中的整型提升(Integral Promotion)
- C语言拾遗(一):整型提升
- 关于C语言整型提升的讲解
- C中的整型提升
- C中的整型提升
- c语言三字母词(trigraph) && 整型提升
- c语言 无符号数 结构体指针 整型提升
- C语言整型数据
- 大数相加,相减,相乘算法(JAVA代码)
- Android蓝牙4.0 BLE开发坑总结
- c++callback回调实例
- android中使用http协议访问网络
- C++ 解析Json——jsoncpp vs2013 C++
- 7_24日C语言|整型提升相关介绍
- extgrid动态显示列
- OSG(OpenSceneGraphic) 渲染引擎架构--整体认识
- java读取xml文件的四种方法
- Apex学习:一个计划任务与批处理的Demo
- Nginx学习笔记(二) 负载均衡
- 空字符串+""等操作结果
- 拓扑排序的一道水题
- Android Fragment 的使用,一些你不可不知的注意事项