在C中是否始终可以转换int
为a float
,而不会float
成为+ Inf或-Inf等特殊值之一?
AFAIK的范围没有上限int
.
我认为int
对于具有IEEE754的平台来说,128位会导致问题,float
因为它的上限值大约为2的127次幂.
#define
宏的标准需要现代C++编译器__cplusplus
.
这通常用在C和C++都可以使用的文件中,但实现略有不同.
但是在C(和C++)中,在标识符中使用任何双下划线的行为是未定义的!
因此,如果C编译器看到类似的东西
#ifdef __cplusplus
那么行为是不确定的?