如何在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
。
如果您需要更多有关如何执行此操作的帮助,我建议您在问题中添加更多代码。
qsort(Names, numberOfFriends, 50, strcmp);
我尝试按字母顺序对名称进行排序(这是一个双指针)。双指针中的每个字符串都是动态分配的字符串,这意味着每个字符串都有不同的大小。 qsort 函数的参数之一是字符串的大小(它实际上是一个转换为二维数组的函数,而不是用于动态分配字符串的双指针)。
如何对动态分配字符串的双指针进行字母排序?
部分回答
字符串中的字符数不是那么重要 - 请参阅 strcmp
将比较第一个 n-1
所在数组的前 n
个字节字节相同。
所以要比较 Names[i]
和 Names[j]
你应该可以使用
differentce=strcmp(Names[i], Names[j]);
前提是Names
声明为char ** Names
。
如果您需要更多有关如何执行此操作的帮助,我建议您在问题中添加更多代码。