1

文字列配列は、fortran 言語を使用して定義されます。

character(len = 20), dimension(5) :: strings = (/"hello", "world", "Hello", "HDF5", "fortran"/)

h5ltmake_dataset_string_f()ここで、HDF5 API リファレンス ドキュメントで説明されているインターフェイスを使用して、この配列をデータセットに保存したいと考えています。

Fortran90 インターフェース: h5ltmake_dataset_string_f

サブルーチン h5ltmake_dataset_string_f(loc_id,dset_name,buf,errcode )

    implicit none

整数 (HID_T)、インテント (IN) :: loc_id ! ファイルまたはグループ識別子

文字 (LEN=*)、インテント (IN) :: dset_name ! データセットの名前

キャラクター(LEN=*)、インテント(IN)、ディメンション(:) :: buf ! データ バッファ

整数 :: エラーコード ! エラーコード

サブルーチン終了 h5ltmake_dataset_string_f

以下の私の呼び出しコード

h5ltmake_dataset_string_f(group_id, dset_name, strings, error)

group_id、dset_name、およびエラーは、サブルーチン呼び出しの前に定義されています。

しかし、このコードをコンパイルしてビルドすると、コンパイルエラーが発生します

h5ltmake_dataset_string_f(): 実引数と仮引数に違反しています!

では、文字列を 1 つのデータセットに書き込む方法は?

4

2 に答える 2

0

h5ltmake_dataset_f() ではなくAPI h5dwrite_f(...)を使用して、文字列配列を書き込みます。

于 2012-12-14T15:35:50.967 に答える