16,548
社区成员




#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <string>
#include <list>
using namespace std;
typedef struct tagURLDNSWITHCOUNT
{
char szurldns[1024];
DWORD dwcount;
}URLDNSCOUNT;
typedef list<URLDNSCOUNT> URLDNSCOUNTS;
URLDNSCOUNTS listURLCOUNTS;
void printflist()
{
URLDNSCOUNTS::iterator i;
for(i=listURLCOUNTS.begin();i!=listURLCOUNTS.end();++i)
{
printf("%s-%d\n",i->szurldns,i->dwcount);
}
}
void main(int argc, char *argv[])
{
URLDNSCOUNT oneURLDNSCOUNT={0},twoURLDNSCOUNT={0},threeURLDNSCOUNT={0};
sprintf(oneURLDNSCOUNT.szurldns,"111");
oneURLDNSCOUNT.dwcount=123;
sprintf(twoURLDNSCOUNT.szurldns,"222");
twoURLDNSCOUNT.dwcount=33;
sprintf(threeURLDNSCOUNT.szurldns,"333");
threeURLDNSCOUNT.dwcount=99;
listURLCOUNTS.push_back(oneURLDNSCOUNT);
listURLCOUNTS.push_back(twoURLDNSCOUNT);
listURLCOUNTS.push_back(threeURLDNSCOUNT);
printflist();
//listURLCOUNTS.sort();
}
#include <stdio.h>
#include <stdlib.h>
//#include <windows.h>
#include <string>
#include <list>
using namespace std;
typedef unsigned int DWORD;
typedef struct tagURLDNSWITHCOUNT
{
char szurldns[1024];
DWORD dwcount;
} URLDNSCOUNT;
typedef list<URLDNSCOUNT> URLDNSCOUNTS;
URLDNSCOUNTS listURLCOUNTS;
bool operator<(const URLDNSCOUNT& l,const URLDNSCOUNT&r){ return l.dwcount<r.dwcount;}
void printflist()
{
URLDNSCOUNTS::iterator i;
for( i = listURLCOUNTS.begin(); i != listURLCOUNTS.end(); ++i )
{
printf( "%s-%d\n", i->szurldns, i->dwcount );
}
}
void main( int argc, char *argv[] )
{
URLDNSCOUNT oneURLDNSCOUNT = {0}, twoURLDNSCOUNT = {0}, threeURLDNSCOUNT = {0};
sprintf( oneURLDNSCOUNT.szurldns, "111" );
oneURLDNSCOUNT.dwcount = 123;
sprintf( twoURLDNSCOUNT.szurldns, "222" );
twoURLDNSCOUNT.dwcount = 33;
sprintf( threeURLDNSCOUNT.szurldns, "333" );
threeURLDNSCOUNT.dwcount = 99;
listURLCOUNTS.push_back( oneURLDNSCOUNT );
listURLCOUNTS.push_back( twoURLDNSCOUNT );
listURLCOUNTS.push_back( threeURLDNSCOUNT );
printflist();
puts("");
listURLCOUNTS.sort();
printflist();
}