stdcallはWin32API関数の呼び出し規約です。ABも標準はstdcallです。だから問題はありません。
しかしVCランタイムの呼び出し規約はcdeclです。だからABがVCランタイムの関数を呼ぶときはcdeclにしなければいけません。
#console
#include <vcrt71.sbp>
Dim h[9] As Long'0-9の10コ
'qsortの比較関数(cdecl)
Function cdecl cmp(a As *Long, b As *Long) As Long
cmp = GetDWord(a)-GetDWord(b)
End Function
'配列データの表示(当然stdcall)
Sub Show(a As *Long,nobj As Long)
Dim n As Long
For n = 0 To nobj -1
printf(Ex"%d:%d\n", n, a[n])
Next
End Sub
'配列を乱数で初期化
Sub Shokika(a As *Long,nobj As Long)
Dim n As Long
For n = 0 To nobj -1
SetDWord(VarPtr(a[n]), Int(Rnd() * 100) + 1)
Next
End Sub
Shokika(h,10)
Show(h,10)
qsort(h,10,sizeof(Long), AddressOf(cmp))
Show(h,10)
getchar()'キー入力待ち