标题:请问怎么用qsort对结构进行排序呢?
只看楼主
song_gpqg
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-3-16
 问题点数:0 回复次数:1 
请问怎么用qsort对结构进行排序呢?
结构是这样的:
struct a
{
int n;
bool k;
} b[10];
想按n的大小对b[10]进行排序,请问可以用qsort么?
如果可以,qsort 和其中的cmp函数应该怎么写呢?谢谢!
搜索更多相关主题的帖子: qsort 结构 bool cmp int 
2007-09-28 19:57
HJin
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:401
专家分:0
注 册:2007-6-9
得分:0 
回复:(song_gpqg)请问怎么用qsort对结构进行排序呢...


/*---------------------------------------------------------------------------
File name: qsort_struct.cpp
Author: HJin (email: fish_sea_bird [at] yahoo [dot] com )
Created on: 9/28/2007 12:46:18
Environment: WinXPSP2 En Pro + VS2005 v8.0.50727.762

Problem statement:
---------------------------------------------------------------------------
请问怎么用qsort对结构进行排序呢?

结构是这样的:
struct a
{
int n;
bool k;
} b[10];
想按n的大小对b[10]进行排序,请问可以用qsort么?
如果可以,qsort 和其中的cmp函数应该怎么写呢?谢谢!
*/

#include <iostream>
#include <cstdlib>
using namespace std;

struct a
{
int n;
bool k;
} b[10];

int cmp(const void* x, const void* y)
{
return ((a*)x)->n - ((a*)y)->n;
}

int main()
{
qsort((void*)b, 10, sizeof(a), cmp);

return 0;
}


I am working on a system which has no Chinese input. Please don\'t blame me for typing English.
2007-09-29 03:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-173793-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025029 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved