Leetcode中,一些题目会传入 returnSize 和 returnColumnSizes 这两个参数。例如:
int** flipAndInvertImage(int** A, int ASize, int* AColSize, int* returnSize, int** returnColumnSizes)
之所以传入指针,是因为C语言是值传递,如果传的是值,无法改变传入的值。题目中要求会返回一个二维数组,且数组的行数列数是可能被function改变的。
在这个题目中,二维数组A的行数是ASize,每一行的列数存在一维数组AColSize中(可能每一行的列数不相等)。因此,为了返回改变后的行数和列数,需要传入对应的指针,即
int -> int*, int* -> int**