24得票2回答
分配指向数组的指针时,分配的内存比指定的大小要小

在C语言中,如果我们只访问在已分配内存范围内的元素,对指向数组的指针进行欠分配内存是“合法”的吗?还是这会导致未定义行为? int (*foo)[ 10 ]; //Pointer to array of 10 ints foo = malloc( sizeo...

8得票5回答
指向数组的指针是什么?int (*ptr)[10]是什么,它是如何工作的?

int (*ptr)[10]; 我本来期望ptr是一个由10个整数指针组成的数组。 但我不理解它为什么是一个指向由10个整数组成的数组的指针。

8得票3回答
使用和取消引用(void**)

我可以为函数传递一个"多态"指针数组。 我可以这样做而不会有警告: foo (void* ptr); bar() { int* x; ... foo(x); } gcc 显然自动将 x 转换为 (void*),这很好。 然而,当我执行以下操作时,我会收到一个警告: f...

8得票2回答
如何获取由双指针指向的二维数组的大小?

我正在尝试从指向数组的双指针中获取2D数组的行数和列数。 #include <stdio.h> #include <stdlib.h> void get_details(int **a) { int row = ??? // how get no. of...