我知道如果C/C++代码中以这种方式省略了数据类型声明:unsigned test=5;,编译器会自动将此变量设为int(在本例中为unsigned int).我听说它是C标准,它适用于所有编译器.
但我也听说这样做被认为是一种不好的做法.
你怎么看?我真的应该键入unsigned int,而不是只unsigned?
有short,long而且long long还数据类型?
Kon*_*lph 55
unsigned 是一种数据类型!它恰好是别名unsigned int.
当你写作时,unsigned x;你没有省略任何数据类型.
这int与C中存在的"default " 完全不同(但不是在C++中),你真的省略了声明上的类型,C自动推断出那种类型int.
至于风格,我个人更喜欢明确,因此写unsigned int.另一方面,我目前正在参与一个只需编写的常规库unsigned,所以我这样做了.
正如@Konrad Rudolph所说,unsigned 是一种数据类型.它真的只是一个别名unsigned int.
至于使用unsigned不良做法的问题?我会说不,使用unsigned数据类型说明符没有任何问题.unsigned int在我看来,专业人士不会被抛出,任何表示你必须使用的编码标准都是不必要的严苛考验.