C/C++(3)解释Char占1字节char*占4字节

时间:2022-09-09 18:44:26

摘要

本文主要讲述char占1字节char*占4字节。


1. 简练解释

char的数据类型是char,而char*的数据类型是pointer。


2. 不行你看

int main(){
cout << sizeof(char)<< endl; // char类型:4 bytes
cout << sizeof(char*)<< endl; // 指针类型:4 bytes
cout << sizeof(long*)<< endl; // 指针类型:4 bytes
cout << sizeof(double*)<< endl; // 指针类型:4 bytes
cout << sizeof(int*)<< endl; // 指针类型:4 bytes
cout << sizeof(int)<< endl; // int类型:4 bytes
return 0;
}

3. 如果我还没说透

IEEE标准中,一个char就是一个字节(byte),一个指针(或者说是一个int)就是4个字节(bytes),这是统一标准。

接下来说说指针,指针存放地址,一般PC上使用的本机编译程序是32位的,对内存和虚拟内存编制地址空间时候,每个地址用32位(也就是4个字节)的整数表示。另外,如果你不明白为什么char*,long*,double*,......,int*都是指针类型,即大小都是4 bytes,这些C语言中的指针的概念可以参照我的另一片博客认识C语言中的指针