编辑这个页面须要登录或更高权限!
在本教程中,我们将借助示例学习C ++编程中的基本数据类型,例如int,float,char等。
在C ++中,数据类型是变量的声明。这确定了与变量关联的数据的类型和大小。例如,
int age = 13;
这里age是type的变量int。这意味着该变量只能存储2或4个字节的整数。
下表显示了基本数据类型,其含义和大小(以字节为单位):
类型 | 关键字 | 大小 |
---|---|---|
布尔型 | bool | 1 字节 |
字符型 | char | 1 字节 |
整型 | int | 2 字节或 4字节 |
浮点型 | float | 4 字节 |
双浮点型 | double | 8 字节 |
无类型 | void | 0 字节 |
宽字符型 | wchar_t | 2 字节 |
现在,让我们更详细地讨论这些基本数据类型。
int关键字用来表示整数。
它的大小通常为4个字节。意思是,它可以存储从-2147483648 到 214748647的值。
例如,
int salary = 85000;
float和double用于存储浮点数(小数和指数)。
float的大小是4字节,double的大小是8字节。因此,double的精度是float的两倍。要了解更多,请参考c++ float和double。
例如,
float area = 64.74; double volume = 134.64534;
如上所述,这两种数据类型也用于指数。例如,
double distance = 45E12 // 45E12 等于 45*10^12
关键字char用于字符。
它的大小是1个字节。
C ++中的字符用单引号' '引起来。
例如,
char test = 'h';
注意:在C ++中,整数值存储在char变量中,而不是字符本身。
宽字符wchar_t类似于char数据类型,不同之处在于它的大小是2个字节而不是1个字节。
它用于表示比char单个字符需要更多内存来表示它们的字符。
例如,
wchar_t test = L'ם' // 存储希伯来语字符
注意引号前的字母L。
注意:在C ++ 11中还引入了另外两个固定大小的字符类型char16_t和char32_t。
bool数据类型有两个可能的值:true或false。
布尔用于条件语句和循环(我们将在后面的章节中学习)。
例如,
bool cond = false;
void关键字表示不存在数据。这意味着“没有”或“没有值”。
当我们学习函数和指针时,会使用到void。
注意:我们不能声明void类型的变量。
我们可以使用类型修饰符来进一步修改一些基本数据类型。C ++中有4种类型修饰符。他们是:
signed
unsigned
short
long
我们可以使用上述修饰符修改以下数据类型:
int
double
char
类型 | 位 | 范围 |
---|---|---|
char | 1 个字节 | -128 到 127 或者 0 到 255 |
unsigned char | 1 个字节 | 0 到 255 |
signed char | 1 个字节 | -128 到 127 |
int | 4 个字节 | -2147483648 到 2147483647 |
unsigned int | 4 个字节 | 0 到 4294967295 |
signed int | 4 个字节 | -2147483648 到 2147483647 |
short int | 2 个字节 | -32768 到 32767 |
unsigned short int | 2 个字节 | 0 到 65,535 |
signed short int | 2 个字节 | -32768 到 32767 |
long int | 4 个字节 | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
signed long int | 8 个字节 | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
unsigned long int | 8 个字节 | 0 到 18,446,744,073,709,551,615 |
float | 4 个字节 | 精度型占4个字节(32位)内存空间,+/- 3.4e +/- 38 (~7 个数字) |
double | 8 个字节 | 双精度型占8 个字节(64位)内存空间,+/- 1.7e +/- 308 (~15 个数字) |
long double | 16 个字节 | 长双精度型 16 个字节(128位)内存空间,可提供18-19位有效数字。 |
wchar_t | 2 或 4 个字节 | 1 个宽字符 |
让我们看一些实例。
long b = 4523232; long int c = 2345342; long double d = 233434.56343; short d = 3434233; // 错误! 超出范围 unsigned int a = -5; //错误! 只能存储正数或0
从基本数据类型派生的数据类型是派生类型。例如:数组,指针,函数类型,结构等。
我们将在后面的教程中了解这些派生的数据类型。