基本数据类型有哪些?
在C++中,基本数据类型主要包括以下几种:
整型 (Integral Types):
int
:通常为32位,有 signed 和 unsigned 两种版本,如int
,unsigned int
.short
或signed short
/unsigned short
: 短整型,占用内存更少。long
或signed long
/unsigned long
/long long
: 长整型,用于存储大数值。浮点型 (Floating Point Types):
float
:单精度浮点数,4字节。double
:双精度浮点数,8字节,精度更高。long double
:长精度浮点数,精度介于两者之间,但不是标准规定的。字符型 (Character Types):
char
: 单个字符,通常占用1字节。布尔型 (Boolean Type):
bool
: 只有两个取值:true
和false
.
上述基本数据类型的最大值,最小值和内存空间?
变量 | 最大值 | 最小值 | 内存空间(32位) | 内存空间(64位) |
---|---|---|---|---|
int | 2147483647 | -2147483648 | 4个字节 | 8个字节 |
signed int | 2147483647 | -2147483648 | 4个字节 | 8个字节 |
unsigned int | 4294967295 | 0 | 4个字节 | 8个字节 |
short | 32767 | -32768 | 2个字节 | 4个字节 |
signed short | 32767 | -32768 | 2个字节 | 2个字节 |
unsigned short | 65535 | 0 | 2个字节 | 2个字节 |
long | 2147483647 | -2147483648 | 4个字节 | 8个字节 |
signed long | 2147483647 | -2147483648 | 4个字节 | 8个字节 |
unsigned long | 4294967295 | 0 | 4个字节 | 8个字节 |
long long | 9223372036854775807 | -9223372036854775808 | 8个字节 | 8个字节 |
float | 3.40282e+038 | 1.17549e-038 | 4个字节 | 4个字节 |
double | 1.79769e+308 | 2.22507e-308 | 8个字节 | 8个字节 |
long double | 1.18973e+4932 | 3.3621e-4932 | 16个字节 | 可能是80位(10字节)或者更多。 |
char | 打不出来,自己看吧 | € | 1个字节 | 1个字节 |
bool | 1(true) | 0(false) | 1个字节 | 1个字节 |
怎样得到上述基本数据类型的最大值,最小值和内存空间?
最大值与最小值:
使用 std::numeric_limits<double>::max()
和 std::numeric_limits<double>::min()
可以获取相应的最大值和最小值。
(如果是用#include <iostream>头要加上#include <limits>,如果用的是万能头#include<bits/stdc++.h>则可不加)
代码如下:
#include <iostream>
#include <limits>
int main() {
std::cout<<std::numeric_limits<变量名>::max()<<std::endl;
std::cout<<std::numeric_limits<变量名>::min();
return 0;
}
#include<bits/stdc++.h>
using namespace std;
int main(){
cout<<numeric_limits<变量名>::max()<<endl;
cout<<numeric_limits<变量名>::min();
return 0;
}
在“变量名”出加测试的变量即可
内存空间:
只需使用sizeof命令
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
cout<<sizeof(变量名);
return 0;
}
在“变量名”出加测试的变量即可
如果有错误或有要改进的地方请在评论中指出,谢谢