これは……うえええ、と思ったので思わずトラックバックを。(+引用記法を試したいという邪念)
odz bufferさんの比較関数について
ええと、普通にこんな比較関数は大変にまずいと思うのだが、誰からも指摘されないものか?有名なあの猫のページもこんなのだったし。大丈夫かおい?
http://d.hatena.ne.jp/odz/20070212/1171345311
例えば、こういう配列のソート。(OSXのgcc4.0.1で確認)
int compare_int(const int* a, const int* b)
{
return *a - *b;
}
...
int data[] = {
2140000000,
-2100000001,
2100000002,
-2100000003,
-2100000004,
2100000005,
2100000006,
2100000007,
-2100000008,
2100000009,
};
qsort(data, 10, sizeof(int), (int (*)(const void*, const void*))compare_int);
for( i = 0; i < 10; i++ ) {
printf( "%11d?n", data[i] );
}結果。
2100000002 2100000005 2100000006 2100000007 2100000009 2140000000 -2100000008 -2100000004 -2100000003 -2100000001
うへえ。