主要'的冲突类型在leetcode平台

时间:2017-04-17 14:30:14

标签: c

 #include<stdio.h>
 #include<stdlib.h>
int* twoSum(int* nums, int numsSize, int target) {
    int *a=(int *)malloc(2*sizeof(int));
    int i,j;
    for(i=0;i<numsSize;i++)
         for(j=i+1;j<numsSize;j++)
    if(nums[i]+nums[j]==target)
    {a[0]=i;a[1]=j;}
    return a;
}
void main(){
    int target,i;
    int numsSize;
    int b[2];
    int num[10];
    int *s;
    s=b;
    printf("Please input numsSize");
    scanf("%d",&numsSize);
    for(i=0;i<numsSize;i++)
    scanf("%d",&num[i]);
    printf("Please input target");
    scanf("%d",&target);

    s=twoSum(num,numsSize,target);
    printf("【%d,%d】",s[0],s[1]);
}

我的代码出了什么问题? 我可以在Visual Basic C ++上顺利运行它,但在平台上它暗示了第58行:主要&#39;的冲突类型,我不知道发生了什么。 < / p>

1 个答案:

答案 0 :(得分:0)

因此,您的代码没有任何问题,但存在一个微妙的问题。

我不确定是否应该在这里讨论Leetcode问题。但是,您收到的错误在错误消息“主要的冲突类型”中明确说明。

您不必在leetcode上编写main()函数。问题是leetcode已经有一个带签名

的隐式main()函数
int main(int argc, char **argv)

因此,当您使用不同的签名定义第二个main()函数时,它会出错,因为我们现在有2个冲突的main()函数声明(一个由leetcode定义,另一个由您定义)。

因此,只需删除main()的代码,并在该平台上简单地包含twoSum()函数,它就能正常工作。