我的帖子是书的代码。
void qsort(void *lineptr[], int left, int right, int (*comp)(void *, void *));
/*Why it can be without name of pointer "comp"? like this: */
void qsort(void *lineptr[], int left, int right, int (*)(void *, void *)); */
main(int argc, char *argv[])
{
int nlines;
int numeric =0;
if (argc > 1 && strcmp(argv[1], "-n") == 0)
numeric = 1;
if ((nlines = readlines(lineptr, MAXLINES)) >= 0)
{
qsort((void **) lineptr, 0, nlines-1, (int (*)(void*,void*))(numeric ? numcmp : strcmp));
writelines(lineptr, nlines);
return 0;
}
else ................
}
为什么不喜欢(int (*comp)(void*,void*))(numeric ? numcmp : strcmp)
主要?代码注释中有问题。