LeetCode上并不要求写main函数,但给了function模板如下
/**
* Note: The returned array must be malloced, assume caller calls free().*/
int* twoSum(int* nums, int numsSize, int target, int* returnSize) {
显然 ,numsSize是数组长度,那returnSize是什么参数呢,最开始的时候我始终没有正确识别出这个参数的含义,走了一些弯路,直到看到别人的正确答案后才推测出numsSize是输出的整型空间个数,至于是否必要,在LeetCode中是必要的,推测是在不需要我们写的main中应用twosum函数时含有这个指针形函数,一旦自己改变,就不会得到正确答案,如把int*改为int型,则发生以下结果:
输入
[2,7,11,15] 9
输出
]
预期结果
[0,1]
输出显然存在错误,因为不知道LeetCode的主函数,所以这个导致错误的原因不得而知,对于这个参数的存在必要性,猜测在实际操作中,可能不止有两个数之和,也有三个四个。。。之和的情况,故把这个参数分离出来。