我在这段代码中的每个int都收到此错误;
if(choice==2) {
inssort(int *a, int numLines);
}
if(choice==3) {
bubblesort(int *a, int numLines);
}
if(choice==4) {
mergesort(int *a, int numLines);
}
if(choice==5) {
radixsort(int *a, int numLines);
}
if(choice==6) {
return 0;
}
这就是我在main中调用函数的地方。如果您想知道我正在编写一个小程序,它可以让用户在4种不同类型的排序算法之间对列表进行排序时做出选择。
任何帮助都将不胜感激。
答案 0 :(得分:11)
当您 调用 这些功能时,您无法使用声明类型。只有当 声明 时,才需要他们:
if(choice==2)
{
inssort(a, numLines);
}
if(choice==3)
{
bubblesort(a, numLines);
}
if(choice==4)
{
mergesort(a, numLines);
}
if(choice==5)
{
radixsort(a, numLines);
}
if(choice==6)
{
return 0;
}
答案 1 :(得分:1)
您正在使用函数声明语法来创建函数调用。这没有必要,而且(正如你所发现的那样)甚至都不起作用。你可以写
if (choice == 2)
inssort(a, numLines);
// etc
顺便说一下,switch
在这里会更加惯用。
答案 2 :(得分:0)
if(choice==2)
{
inssort(int *a, int numLines);
}
您的代码转到此
if(choice==2)
{
inssort(&a, numLines);
}