查词猫

qsort函数

如何使用 qsort 函数编写比较函数?

A:使用qsort最重要的是比较函数的编写。首先,qsort函数的原型已经明确定义了这个元素的原型:int (* compar) (constvoid *,constvoid *),需要传入指向两个元素的指针。和上面加第三个参数的原因一样,比较函数的参数指针是void *类型,这个参数也不知道元素的实际大小,所以我们需要对类型进行强变换,转换成元素实际类型对应的指针。例如,为了对上面的int数组进行排序:

c 库函数 qsort () 对数组进行排序是什么?

答案:C库函数void qsort (void * base,size _ t nitems,size _ t size,int (* compar) (constvoid *,constvoid *))对数组进行排序。下面是qsort()函数的声明。Base -指向要排序的数组的第一个元素的指针。

为什么qsort()为从小到大即升序排序?

A:如果A小于B,返回值为负(0),即A会排在B之前,同理,如果A大于B,那么A会排在B之后,所以这里的qsort()是从小到大升序排序的。所以运行结果是:10 20 25 40 90 100。想想为什么。

qsort(arr, sizeof(arr)/sizeof (arr [0]), compare)是什么意思?

答案:So QSORT (arr,sizeof (arr)/sizeof (arr [0]),sizeof (arr [0]),compare);在对qsort函数的调用中,第二个参数是要排列的元素个数(5),第三个参数是要排列的元素大小(16)。我们将arr传递给qsort函数,该函数将arr理解为指向数组第一个元素的指针。arr的第一个元素是arr [0] [0],所以arg1和arg2指的是指向' a [i] [0]'的指针。我们知道,a [i] [0]是一个字符,它是char,所以arg1和arg2

参考资料
免责声明
查词猫是一个由大数据和网友共同维护的在线词典工具,其大数据部分是基于自然语言处理和文本理解技术生成。如果您发现信息不准确、不完整、涉嫌侵权或违规,请通过 ai@know.email 联系我们,我们会根据相关法律规定及时处理。
未经许可,禁止商业网站等复制、抓取查词猫内容;合理使用者,请注明来源于www.chacimao.com
基本信息
中文名
qsort函数
摘要
如何使用qsort函数编写比较函数?A:使用qsort最重要的是比较函数的编写。首先,qsort函数的原型
词条统计
所属栏目
更新时间
2024-03-28 14:57
内容字数
952