如何在c中对双指针进行字母排序?

How to make an alphabetical sort on double pointers in c?

qsort(Names, numberOfFriends, 50, strcmp);

我尝试按字母顺序对名称进行排序(这是一个双指针)。双指针中的每个字符串都是动态分配的字符串,这意味着每个字符串都有不同的大小。 qsort 函数的参数之一是字符串的大小(它实际上是一个转换为二维数组的函数,而不是用于动态分配字符串的双指针)。

如何对动态分配字符串的双指针进行字母排序?

部分回答

字符串中的字符数不是那么重要 - 请参阅 - strcmp 将比较第一个 n-1 所在数组的前 n 个字节字节相同。

所以要比较 Names[i]Names[j] 你应该可以使用

differentce=strcmp(Names[i], Names[j]);

前提是Names声明为char ** Names

如果您需要更多有关如何执行此操作的帮助,我建议您在问题中添加更多代码。