SORTQQ

実行時サブルーチン:1 次元配列をソートします。配列要素が構造型または記録構造体であってはいけません。

モジュールUSE DFLIB

形式

CALL SORTQQ (adrarray, count, size)

adrarray
(入力) INTEGER(4)。配列のアドレス (LOC で戻されます)。

count
(入力,出力) INTEGER(4)。入力では,ソートする配列の要素数。出力では,実際にソートされた要素数。

size
(入力) INTEGER(4)。ソートする配列の種類を指定する 32,767 より小さい正の定数。\DF98\INCLUDE サブディレクトリの DFLIB.F90 で定義されている以下の定数を数値配列の型と種類として指定します。

定数 配列の型
SRT$INTEGER1 INTEGER(1)
SRT$INTEGER2 INTEGER(2) または等価
SRT$INTEGER4 INTEGER(4) または等価
SRT$REAL4 REAL(4) または等価
SRT$REAL8 REAL(8) または等価

size に提供された値がシンボル定数でなく,32,767 より小さい場合,配列は要素毎に size 個の文字を持つ文字型配列であると仮定されます。

SORTQQ が成功したことを確かめるには,count に返される値と,count に提供した値を比較することです。それらが同じであれば,SORTQQ は正しい要素数をソートしたことになります。


警告:配列の位置は,LOC を使ってアドレスで渡されなければなりません。これは Fortran 型検証を無効にするため,countsize 引数が正しく,size が正しいことを確認しなければなりません。

不正な引数を渡すと,SORTQQ はメモリーをランダムにソートしようとします。ソートしようとするメモリーが現在のプロセスに割り当てられている場合,そのメモリーがソートされます。ソートしようとするメモリーが現在のプロセスに割り当てられていない場合,オペレーティング・システムが介在して,プログラムを中断し,一般保護違反のメッセージを受け取ります。


互換性

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

関連情報

BSEARCHQQ, LOC

	!	1 次元配列をソートします
	!
		USE DFLIB
		INTEGER(2) array(10)
		INTEGER(2) i
		DATA ARRAY /143, 99, 612, 61, 712, 9112, 6, 555, 2223, 67/
	!	配列をソートします
		Call SORTQQ (LOC(array), 10, SRT$INTEGER2)
	!	ソートした配列を表示します
		DO i = 1, 10
		  WRITE (*, 9000) i, array (i)
		END DO
	9000	FORMAT(1X, ' Array(',I2, '): ', I5)
		END