[英]What does sizeof(int**) mean?
我是C语言的新手。我在程序中看到以下行:
grid = calloc(nx,sizeof(int**));
我读到int**
是指向指针的指针,但是sizeof(int**)
是什么意思?
sizeof
运算符产生其操作数所需的存储字节数。 操作数可以是表达式或括号中的类型。 在这种情况下,操作数是类型int **
,它是“指向int
指针”。
假设grid
已声明为
int ***grid;
然后可以重写为
grid = calloc(nx, sizeof *grid);
sizeof
表达式只是表示一个指向int
的指针所需的字节数。 据推测,无论谁编写代码,都希望分配足够的内存来存储nx
此类指针。
sizeof(int **)
告诉您int **
字节数,类似于sizeof(int *)
告诉您int *
字节数。 它们只是具有不同级别的间接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.