可以安全地将char数据存储在int数据类型中

时间:2015-04-19 03:39:13

标签: c++

我知道你可以将整数最多存储为100和char数据类型中的某些东西,但是将char数据存储为' a'或者' b'在一个int?我尝试了它似乎工作,但我不太确定它是否安全。是吗?我可以创建一个int数组并使用此数组以' x'' b' ...等形式存储数据?

2 个答案:

答案 0 :(得分:1)

是; char保证小于int

答案 1 :(得分:1)

'a''b'等字符只代表char数据类型中的整数值。 int至少与char一样宽,也就是说,它代表了其值的超集。所以是的,非常安全。

通常您将拥有sizeof(int) > sizeof(char),因为标准库希望为EOF(文件结束)保留一个值。从技术上讲,这种奢侈是可选的,或者至少是不可靠的,你应该使用eofbit等与深奥系统的兼容性。