[Error]expectedprimary-expressionbefore'int',不理解是什么意思#include <stdio.h>

这里第15行代码出了问题,[Error] expected primary-expression before 'int',不理解是什么意思


#include<stdio.h>
void Quicksort(int arry[],int L,int R);

int main(void)
{
    int n,i;
    printf("请输入要排序的个数n:");
    scanf("%d",&n);
    int arry[n];
    for(i = 0;i < n;i++)
    {
        printf("请输入第%d个数:",i+1);
        scanf("%d",&arry[i]);
    }
    Quicksort(int arry[],0,n-1);
    for(i = 0;i < n;i++)
    {
        printf("%d\t",arry[i]);
    }
    return 0;
}




void Quicksort(int arry[],int L,int R)
{
    if(L>=R)
    {
        return; 
    }
    int left=L,right=R;
    int pivot = arry[left];
    while(left<right)
    {
        while(left<right&&arry[right]>=pivot)
        {
            right--;
        }
        if(left<right)
        {
            arry[left]=arry[right];
        }        
        while(left<right&&arry[left]<=pivot)
        {
            left++;
        }
        if(left<right)
        {
            arry[right]=arry[left];
        }
        if(left>=right)
        {
            arry[left]=pivot;
        }
        Quicksort(arry,L,right-1);
        Quicksort(arry,right+1,R);
    }
}

第16行:Quicksort(int arry[],0,n-1); 应为: Quicksort(arry,0,n-1);

Quicksort(int arry[],0,n-1);
->
Quicksort(arry,0,n-1);

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答由chatgpt基于相关博客总结生成:

    这个错误的具体含义是"expected primary-expression before 'int'",意思是在第15行的代码中,编译器预期一个主表达式(primary expression),但是却遇到了'int'这个关键字。

    出现这个错误的原因是,'int'是C语言的关键字,用于声明整型变量。在代码中,你将一个变量名命名为'int',这与C语言的关键字冲突了,导致编译器无法正确解析。

    为了解决这个错误,你可以修改第15行的变量名,避开关键字的冲突。例如:

    #include <stdio.h>
    
    int main() {
       int number = 10;
       int myInt = 20;
       printf("Number: %d\n", number);
       printf("Integer: %d\n", myInt);
       return 0;
    }
    

    在这个示例中,将变量名改为'myInt',避免了与关键字冲突,就可以修复这个错误了。

    希望这个解答对你有帮助!如有疑问,请随时追问。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^