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


posted @ 2012-07-12 21:53  propheteia  阅读(7331)  评论(0编辑  收藏  举报