做力扣遇到
/**
* Return an array of arrays of size *returnSize.
* The sizes of the arrays are returned as *returnColumnSizes array.
* Note: Both returned array and *columnSizes array must be malloced, assume caller calls free().
*/
int** mergeArrays(int** nums1, int nums1Size, int* nums1ColSize, int** nums2, int nums2Size, int* nums2ColSize, int* returnSize, int** returnColumnSizes)
看了这篇文章【leetcode】详解力扣中int *returnSize和int **returnColumnSizes | 册页晚的学习笔记 (ceyewan.top)
直接了当的说一下,
int **returnColumnSize 是 指向列数组指针的指针
*returnColumnSizes即为那个数组首元素的地址
*returnColumnSizes[0]即为首元素
*returnColumnSizes[i]即为数组的对应元素。
int** returnColumnSizes只是在主函数这么写了,没有初始化(没有指向任何元素)
然后二维数组得知道行数和列数,
行数就是returnSize
因为每一行的列数可能不一样,所以
returnColumnSizes[0][i]用来存第i行的列数(returnColumnSizes[0]就是*returnColumnSizes)