
因为leetcode中用C语言解决的算法题中,很多都会返回一个二维数组来保存结果,以上就我看的答案里面的,如何用指针的指针保存答案的C语言语法实现方法,开始对a[aSize++] = t; 这句比较诧异,慢慢理解了a[i]代表的也是指向一维数组的指针,t也是一个一维数组的起始地址,ennnnnn原来指针代表的数组还能这么直接赋值?(以上均是我自己的理解,哪里有问题希望老师能指出),并且理解不是很深入,
比如这个二重指针,他先开辟了(行),确定了有多少个一维数组,代入数组的理解,初始怎么能不设置列数呢?有点乱了,就是二重指针变量里面的地址不是连续的吗?
` int **result;
int resultSize;
result = (int *) malloc(sizeof (int) * 10000);
*result = (int *) malloc( sizeof (int) * k);
int *temp = (int *)malloc(sizeof (int) * k);
for (int i = 0; i < k; i++) {
temp[i] = path[i];
}
for (int i = 0; i < k; ++i) {
result[resultSize++][i] = temp[i];
}``
以上这段代码是我一开始自己的想法写的,是错的。不能一开始就把二重指针像二维数组一样定义好吗,如果可以正确的应该如何定义呢