gpt4 book ai didi

c - qsort() 函数如何工作?

转载 作者:行者123 更新时间:2023-11-30 21:35:03 33 4
gpt4 key购买 nike

void qsort (
void* base,
size_t num,
size_t size,
int (*compar)(const void*,const void*)
);

qsort函数如何访问地址后的“size”字节来获取下一个元素?
通过将 void* 类型转换为 char*

最佳答案

How does the qsort function access "size" bytes after the base address to get the next element? By typecasting void* to char*?

问题中固有的假设是 qsort 本身是用 C 编写的;事实并非如此。我们假设是这样。

转换为 char* 是一种典型的方法,是的,可以通过显式使用强制转换运算符,或者将 base 分配给局部变量输入char*

GNU C 允许您直接将整数添加到 void 指针,但这是 C 语言的不可移植扩展。

如果您对特定实现有疑问,请说出具体实现。

关于c - qsort() 函数如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51864308/

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