Linux 64位操作系统 数据类型大小
存储器没有任何结构和意义
让存储器具有结构的基本方法是块(chunk)处理存储.大部分计算机使用特定位数的块来处理存储,有8,16,32,64位。
这里使用的是64位的机器。
虽然确切的大小因机器不同而不同,但通常都将8位的块作为一个字节。4个字节作为一个word.
每个字节都有它的地址。比如722323.要让722323这个地址有意义, 必须知道存储在该地址的值的类型。一旦知道了该地址值的类型,就知道了表示该类型的值需要多少位以及如何解释这些位。
例如,地址722323的位,若是无符号整数类型,则表示113;若是字符类型,则表示q.
下面是64位linux系统下常见数据类型的大小:
#include<iostream> using namespace std; int main() { cout<<"int:"<<sizeof(int)<<endl; cout<<"long int:"<<sizeof(long int)<<endl; cout<<"float:"<<sizeof(float)<<endl; cout<<"char:"<<sizeof(char)<<endl; cout<<"double:"<<sizeof(double)<<endl; cout<<"char*:"<<sizeof(char*)<<endl; cout<<"int*:"<<sizeof(int*)<<endl; }
输出:int:4
long int:8
float:4
char:1
double:8
char*:8
int*:8 //所有类型的指针长度都为8