c语言中TMin的写法

在《CSAPP》中提到:        

#define INT_MAX 2147483647
#define INT_MIN      (-INT_MAX -1)

INT_MIN这样写的原因是:

虽然-2147483648 这个数值能够用int类型来表示,但在C语言中却没法写出对应这个数值的int类型常量。

因为按照c语言的类型推导,-2147483648被写成常量形式的时候,对于c90,其会转成unsigned类型来表示为2147483648,对于c99,其会被表示为long long类型,值为-2147483648

详情参考:http://www.cnblogs.com/Jack47/archive/2013/01/06/TMin32-in-c.html

原文地址:https://www.cnblogs.com/youngkingwang/p/3849982.html