C++笔记(1):基本内置类型

£可爱£侵袭症+ 提交于 2020-01-29 09:04:11

掌握各种基本内置类型是在编程中正确处理各种数据的前提,在计算机中数据存储和传输以位(bit)为单位,每8个位bit组成1个字节(Byte)。32位计算机的字长为32位,即4个字节;对应的,64位计算机的字长为64位,即8个字节。

本文中所描述的都是C++中的类型,和C中的类型略有差别。

  • bool的长度为1个字节,即8位。
  • char的长度为1个字节,而C++特有的wchar_t为2个字节,即16位。
  • int通常为1个字长,short为半个字长,long为1个或2个字长。
  • ​float 的长度为一个字长,double为两个字长,long double为3个或4个字长。
  • 此外指针所占内存的长度也由系统决定,在32位系统下为32位,64位系统下则为64位。

按win32的条件运行以下代码:

#include <iostream>
using namespace std;
int main()
{
    cout << "bool:" << sizeof(bool) << endl;
    cout << "char:" << sizeof(char) << endl;
    cout << "wchar_t:" << sizeof(wchar_t) << endl;
    cout << "short:" << sizeof(short) << endl;
    cout << "int:" << sizeof(int) << endl;
    cout << "long:" << sizeof(long) << endl;
    cout << "float:" << sizeof(float) << endl;
    cout << "double:" << sizeof(double) << endl;
    cout << "pointer:" << sizeof(char*) << endl;
    return 0;
}

运行结果如下(sizeof返回的是字节个数),平时编程按照这些长度就行:

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!