请选择 进入手机版 | 继续访问电脑版
快捷导航
1 117

听课笔记20180905

小毛鱼 于 2018-9-5 20:37 发表在 [技术分享] [复制链接]

注册后可查看大图哦

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
20180905
Unsigned char 是一个字节
C语言隐式转换:
(摘自CSDN):C语言规定,不同类型的数据需要转换成同一类型后才可进行计算。
相同类型之间:
1.字符必须先转换为整数
2.short型转换成int型
3.float转换成double,以提高运算精度
4.赋值时,一律右部值转换成左部类型
不同类型之间:
1.当整型数据和双精度数据进行运算时,则先将整型数据转换成双精度类型,再进行运算,结果为双精度型数据。
2.当字符型数据和实型数据进行运算时,则先将字符型数据转换成实型数据,再进行运算,结果为实型数据。
C语言规定的转换规则是由低级向高级转换
char,short —> int —> unsigned —>long —>double<—float
低级 ——————————————————->高级
Unsigned char t= 0x01;
Unsigned longint u = 0;
U = t;//u = 0x00000001;
结构小的转化成大的,系统自动转换,编译器会将结构大的区域多出的部分进行填充。若改为t = u;编译器会报worning,因为是大的转为小的,此时便需要使用强制类型转换。int型数值赋给char型变量时,只保留其最低8位,高位部分舍弃。如u=0x12345678,强转后变为0x78。
指针大小永远和CPU字长保持一致,不管是什么类型的指针(char、int等类型)。
万能指针 void *
void *和unsigned char *都是万能指针。因为大小相同,一切皆大小。Void *是约定的万能指针
(摘自CSDN):void *是一种指针类型,常用在函数参数、函数返回值中需要兼容不同指针类型的地方。我们可以将别的类型的指针无需强制类型转换的赋值给void *类型。也可以将void *强制类型转换成任何别的指针类型,至于强转的类型是否合理,就需要程序员自己控制了。
C语言隐式转换:https://blog.csdn.net/qq_29169813/article/details/51181628

Connecting & Messaging from Any.

共 1 个关于本帖的回复 最后回复于 2018-9-8 14:04

@TK 注册会员 发表于 2018-9-8 14:04:16 | 显示全部楼层
6666666666
Connecting & Messaging from Any.
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐板块

精彩推荐

热门排行

明星用户

手机版|小黑屋|AnyMSG ( ©AnyMSG 2009 - 2017 · ICP备16009991号 )

GMT+8, 2019-4-19 12:45