我正在尝试使用qsort对字符指针数组进行排序,并在编译时保持出现分段错误。我会发布我的qsort调用的代码和比较函数和任何帮助将不胜感激。使用q sort进行分段错误?
//count declaration
size_t count = (sizeof (strPtrsQsort)/sizeof (*strPtrsQsort));
//function call
qsort ((char *)ptr, size, sizeof(char), compare);
//compare function
int compare (const void *a, const void *b)
{
const char **ia = (const char **)a;
const char **ib = (const char **)b;
return strcmp (*ia, *ib);
}
什么是'count',什么是'strPtrsQsort',并且他们目前的代码片段你贴? 'qsort'中没有任何地方使用它们。 – AnT 2014-10-09 18:19:51
为什么在C++中使用C字符串,原始数组和C的'qsort'?使用'std :: vector'和'std :: sort'。 –
crashmstr
2014-10-09 18:21:57
如果你想对一个指针数组进行排序,为什么数组元素的大小作为'sizeof(char)'传递给'qsort'?如何声明'ptr'?为什么在传递给'qsort'之前将它转换为'char *'? – AnT 2014-10-09 18:24:12