C语言位段我买的一本书说位段必须被定义int unsigned 和signed类型的。这句话正确

C语言位段我买的一本书说位段必须被定义int
unsigned 和signed类型的。这句话正确吗?我把位段列表定义成short类型可以运行,起初我以为是位段列表只能定义无符号,这句话到底是什么意思

这话没有错,就是只能定义为整型的意思,包括int、unsigned、signed等。由于早期的C的int型是2字节,所以没有short类型,后期的编译器升级到int为4字节了,在小数据运算时为了节约内存空间,就有了short类型,它是2字节的整型数,所以你定义为short也没有错。实际上定义成char型也应该是可以的,因为char型的实质是单字节整型,在C中与int型可以通用。
温馨提示:答案为网友推荐,仅供参考
相似回答