声明C ++中的类型太多

时间:2015-06-28 09:27:48

标签: c++ variables modifiers

无符号/签名long int a; 时 为什么 unsigned / signed long float / double a; 是不可能的?

为什么 声明 错误太多,后者而不是前者?

3 个答案:

答案 0 :(得分:1)

有三种浮点类型:floatdoublelong double。这些都没有等效的无符号,因此将signedunsigned放在它们前面是无效的。没有long float这样的类型。

答案 1 :(得分:1)

您收到该消息是因为存在long double,但是unsigned long double不存在。 unsigned也可以解释为int,因此在后一个声明中你有两种类型: unsigned long double 。我不相信C ++中存在长期浮动。

答案 2 :(得分:0)

这是因为第一个(long int)是一个记录的变量类型,而第二个不是。

C ++语言支持的数据类型是:

char         
unsigned char   
signed char     
int            
unsigned int    
signed int  
short int 
unsigned short int 
signed short int
long int    
signed long int 
unsigned long int 
float   
double  
long double