首页 > 其他分享 >sizeof的迷惑行为

sizeof的迷惑行为

时间:2022-11-19 21:35:44浏览次数:41  
标签:符号 -- 行为 结果 编译器 迷惑 sizeof 整形

问题:判断下面代码的运行结果?

A.>    B.<      C.不输出    D.程序有问题

分析:i为全局变量,未设初始值时,编译器默认初始化为0。所有i--为-1,sizeof(i)求i类型大小为4,家人们,选B吗?

但是,sizeof返回的值是无符号整形,编译器自动将左侧转换为无符号整形数据。即-1对应的无符号整形是一个非常大的数,一定超过4或者8,故选A。   

拓展:sizeof的计算结构是无符号的整数unsigned int,

size_t --是sizeof计算的结果的类型                                                                                                

代码如下:

sizeof的迷惑行为_编译器

运行结果:

sizeof的迷惑行为_初始化_02

sizeof的迷惑行为_编译器_03

标签:符号,--,行为,结果,编译器,迷惑,sizeof,整形
From: https://blog.51cto.com/u_15830263/5870650

相关文章