"Programming Pearls": qsort 类型冲突
"Programming Pearls": conflicting types for qsort
这是第 1 栏中 Programming Pearls 的解决方案。6_1:
> #include <stdio.h>
int intcomp(int *x, int *y)
{
return *x-*y;
}
int a[1000000];
int main(void) {
// insert code here...
int i,n=0;
while (scanf("%d",&a[n])!=EOF) {
n++;
}
qsort(a,n,sizeof(a[0]),intcomp);
for(i=0;i<n;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
错误信息:
conflicting types for "qsort"
你能告诉我为什么会这样吗?不是默认定义的吗?
我的编译器是 Xcode (MacOS)。
评论(事实证明是正确的猜测)提升为回答:
不清楚上面的源代码是从书上输入的,还是网上找的。上面的代码与 this github copy of p1c1quicksort 有一些不同,即缺少上面的代码:
#include <stdlib.h>.
这是第 1 栏中 Programming Pearls 的解决方案。6_1:
> #include <stdio.h>
int intcomp(int *x, int *y)
{
return *x-*y;
}
int a[1000000];
int main(void) {
// insert code here...
int i,n=0;
while (scanf("%d",&a[n])!=EOF) {
n++;
}
qsort(a,n,sizeof(a[0]),intcomp);
for(i=0;i<n;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
错误信息:
conflicting types for "qsort"
你能告诉我为什么会这样吗?不是默认定义的吗?
我的编译器是 Xcode (MacOS)。
评论(事实证明是正确的猜测)提升为回答:
不清楚上面的源代码是从书上输入的,还是网上找的。上面的代码与 this github copy of p1c1quicksort 有一些不同,即缺少上面的代码:
#include <stdlib.h>.