【发布时间】:2013-03-14 17:49:05
【问题描述】:
C 中对有符号和无符号字符有什么要求?
在 C 中使用有符号和无符号字符有什么特殊原因吗?还是只是为了完整性而添加,以便编译器在添加有符号/无符号修饰符之前不必检查数据类型?
我不是在询问有符号和无符号变量。我的疑问是无符号字符变量不足以使您必须依赖有符号字符变量的特殊情况。
【问题讨论】:
-
I am not asking about signed and unsigned variables。您已经接受了一个准确描述这一点的答案。出于好奇,你为什么?我也不完全确定你的意思是问这是否是你要找的。span> -
我想找出一个你特别需要有符号/无符号字符变量的问题。由于我没有得到任何答案,因此我得出结论,毕竟可能不存在这样的问题。因此答案被接受。为什么要浪费别人的时间:)。但是,如果您能提供一个示例问题,我将非常感激。
-
signed char通常用于文本表示。只是按照惯例。unsigned char在处理原始数据时要好得多,您需要在其之上处理一些数学运算。例如,当您将值 128 扩展为 int 时,unsigned char 将保持 128 (0x80)。签名的字符会变成 -1 (0xFFFFFFFFFFFFFF80),这可能是你不想要的 -
谢谢。请将其发布为答案,我会接受。
标签: c