GCC有一个选项 -Wconversion ,它可以启用转换警告:

对可能改变值的隐式转换发出警告 . [...]

但是当涉及到符号转换时,它在C和C之间有不同的行为:

默认情况下,在C中禁用有关有符号和无符号整数之间转换的警告,除非明确启用了-Wsign转换 .

这是什么原因? C和C在某种程度上有关于有符号/无符号转换的不同,这使得它在C中更危险吗?或者还有其他原因吗?