unsigned d=-1,输出的的问题
来源:3-10 限定词数据类型转化
可乐pp
2018-01-28 21:56:00
unsigned d=-1,输出的时候NSLog(@"%d",d)可以正确输出-1,我一开始觉得unsigned d=-1有问题,因为这是无符号类型,但是输出正确结果。我可以理解为输出的时候把一个无符号的数转换为有符号的数吗
1回答
Tender10
2018-01-29
因为%d是输出有符号的整型数据的转义符,所以unsigned定义的无符号的类型,输出的时候使用%d进行转义,又变成了有符号的数据进行输出了。如果想输出无符号的数据,使用%u转义符进行输出即可。
相似问题