int **a[3][4]占多少字节?

首先要说明的
int **a[3][4]
的意思是定义一组指向指针变量的二维指针数组,
也就是说,定义了一个3行4列的指针数组,每个指针都指向一个指针,
从存储结构上来说,就是一个存储了12个指针变量的数组,
问题就在于搂主所说的“a占多少字节数?”
这里的a指的到底是什么,
a本身实际含义是一个地址,表示a[3][4]这个数组的首地址,
就a作为一个个地址来说,它占用4个字节;
同时a也是a[3][4]这个数组一种表示,
如果用sizeof(a)去求解的话,它代表的是a[3][4]这个数组所占用的空间,
而不是a这一个地址所占用的存储空间,
也就是12个指针变量所占的空间,自然是48个字节了.
64位一个指针占8字节,32位一个指针占4字节。

时间: 2024-10-29 19:11:00

int **a[3][4]占多少字节?的相关文章

int 类型 占多少字节是由什么决定的

int 类型占据多少字节?到底是跟编译器有关?还是系统来决定的? 1. CPU的设计者才不管你在上面跑什么程序.他们只是按着他们的想法来设计.而int的大小,至少在C/C++中,标准只说可以由实现者自己定义.至于要不要按机器的字长来设计那就是编译器设计者的喜好了.除非哪天标准改成int必须是机器的字长....不过C/C++标准中抽象出来的"机器",恐怕没有字长这个概念吧. 2. 编译器,简单的说目前流行的的是32位机,但TC里的int就是16位的,流行的编译器(gcc,VC)都是32位

一int考虑什么类型的多少字节

一int表示的字节数? 问题是,我们经常得到的答案4. 但int究竟占多少个字节,却跟你的机器环境有关. As you can see, the typical data type sizes match the ILP32LL model, which is what most compilers adhere to on 32-bit platforms. The LP64 model is the de facto standard for compilers that generate

c++类型所占的字节和表示范围

一:数值类型的大杂烩 (1)short.int 和 long 类型都表示整型值.存储空间的大小不同 一般, short 类型为半个机器字长,int 类型为一个机器字长,而 long 类型为一个或两个机 器字长(在 32 位机器中 int 类型和 long 类型通常字长是同样的). (2)常量的定义以及表示范围: unsigned   int   0-4294967295                                                  就是2^32-1 int  

海量数据面试题整理1.给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是

海量数据面试题整理 1. 给定a.b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a.b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G.所以不可能将其完全加载到内存中处理.考虑采取分而治之的方法. s 遍历文件a,对每个url求取,然后根据所取得的值将url分别存储到1000个小文件(记为)中.这样每个小文件的大约为300M. s 遍历文件b,采取和a相同的方式将url分别存储到1000各小文件(记为).这样

不同编码方式1个英文字母占的字节是不同的

不同编码方式1个英文字母占的字节是不同的: 1.ASCII码:一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间. 2.UTF-8编码:一个英文字符等于一个字节,一个中文(含繁体)等于三个字节.中文标点占三个字节,英文标点占一个字节 3.Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节.中文标点占两个字节,英文标点占两个字节 原文地址:https://www.cnblogs.com/flzs/p/12247915.html

int、char、long各占多少字节数

Java基本类型占用的字节数:1字节: byte , boolean2字节: short , char4字节: int , float8字节: long , double 编码与中文:Unicode/GBK: 中文2字节UTF-8: 中文通常3字节,在拓展B区之后的是4字节综上,中文字符在编码中占用的字节数一般是2-4个字节. C语言中short通常是2字节,具体可能和平台编译器相关. 原文地址:https://www.cnblogs.com/muhe221/p/8856627.html

[单选题]64位系统上,定义的变量int *a[2][3]占据的——字节

4 12 24 48 正确答案: 很遗憾,没答对,再接再厉! 答案解析 在64位系统上,一个指针占8个字节.在32位系统上,一个指针占4个字节.注意无论在32位还是在64位系统占,int均为4个字节.

空类及空的虚函数占多少字节

运行下面的代码,输出是什么? class A { }; class B { public: B() {} ~B() {} }; class C { public: C() {} virtual ~C() {} }; int _tmain(int argc, _TCHAR* argv[]) { printf("%d, %d, %d\n", sizeof(A), sizeof(B), sizeof(C)); return 0; } 答案是1, 1, 4.class A是一个空类型,它的实例

枚举占多少字节?

网上暂时只找到了这种描述: 标准C并没有明确规定枚举类型占用空间的大小,标准中只是说"枚举类型的尺寸是以能够容纳最大枚举子的值的整数的尺寸",同时标准中也说明了:"枚举类型中的枚举子的值必须要能够用一个int类型表述",也就是说,枚举类型的尺寸不能够超过int类型的尺寸,但是是不是必须和int类型具有相同的尺寸呢?上面的标准已经说得很清楚了,只要能够容纳最大的枚举子的值的整数就可以了,那么就是说可以是char.short和int."不同的C编译器,对enu