我正在阅读有关嵌入式编程的一些教程,其中一篇说int
和signed int
不同,但没有解释如何或为什么。
我理解为什么unsigned int
和int
不同,但int
和signed int
不同,对我来说是新的。
答案 0 :(得分:15)
仅出于历史原因。今天,每当您声明int
时,您都会获得signed int
。即使使用今天的编译器,您可能会看到差异的唯一一点是char
与signed char
的不同之处在于规范(在分配文字字符串时值得注意)但与int
不同。 / p>
答案 1 :(得分:2)
据我所知,差异仅存在于char数据类型中。其中char a;
可以是signed char a;
或unsigned char a;
,具体取决于编译器选项。正如this article所说。 (--signed_chars)
对于int数据类型,int
和signed int
之间没有区别。