gpt4 book ai didi

c - Qsort结构数组比较函数

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:40 24 4
gpt4 key购买 nike

好吧,我通过在网上四处寻找来解决这个问题,但是有人可以解释第 1 行和第 2 行的确切作用以及为什么需要它们

int structCompare(const void *a, const void *b)
{
struct trade *tempA = (struct trade *)a;//(1)
struct trade *tempB = (struct trade *)b;//(2)
return strcmp(tempA->name, tempB->name);
}

最佳答案

这些行将通用 void 指针转换为 struct trade 指针。当涉及 void * 时,显式强制转换在 C 中是多余的,应该被删除:

 struct trade *tempA = a;
struct trade *tempB = b;
return strcmp(tempA->name, tempB->name);

你可以这样写:

return strcmp(((struct trade *)a)->name, ((struct trade *)b)->name);

不过我更喜欢第一个。

关于c - Qsort结构数组比较函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10760475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com