[英]Why does type char return a different value?
如果char
可以容纳的最大值是255,那么如何将char number
类型的变量设置为等于= 255;
然后std::cout << number;
程序返回\\377
?
\\377
是 255。
十进制255是八进制377是二进制1111 1111是十六进制FF。
还应注意,如果系统/编译器上的char
是无符号的且是8位的,则char
可以容纳的最大值仅为255。 一个已签名的char
不会上升那么高,并且如果您尝试将其填充,则会溢出。 您可能想要使用unsigned char
来确定性(如果您确实偏执:P,则使用assert(CHAR_BIT==8)
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.