ソートの詳細は
long型の配列に、構造体のリストの先頭からアドレスを代入した配列で行っています。

qsort( Object , OBJEC_MAX , sizeof( long ) , 比較関数のアドレス );

比較関数
int compare( const void *x , const void *y ){
Count ++;
return ( ( POBJECT )( *( const long * )x ) )->a - ( ( POBJECT )( *( const long * )y ) )->a;

}
int compare2( const void *x , const void *y ){

Count ++;
return ( ( POBJECT )( *( const long * )x ) )->Length < ( ( POBJECT )( *( const long * )y ) )->Length ? -1 : ( ( POBJECT )( *( const long * )x ) )->Length > ( ( POBJECT )( *( const long * )y ) )->Length;
}
quick sort データ : 50000個 , 回数 : 10回
平均(int) 呼び出し回数 : 733630 , 時間 : 22
平均(float) 呼び出し回数 : 860843 , 時間 : 56

もう少し詳しく平均を取ってみたところ1.5倍は少し多すぎたようですがやはり
floatの比較関数のほうが呼ばれている回数は多いです。