TRNSYS-USERS拾い読み(C++からMESSAGES()サブルーチンを呼び出す)

TRNSYS-USERSにC++からTRNSYSのサブルーチン(FORTRAN)を呼び出す例が紹介されていました。
[TRNSYS-users] c++ type: call utility subroutine “Messages()”

C++からFORTRANへ文字列渡す時って、文字列の長さを追加で渡すんですね。

extern “C” __declspec(dllimport) void _cdecl MESSAGES(int* errorCode,char* message, char* severity, int* unitNo, int* typeNo, int n, int m);
#define Messages MESSAGES

この例だとmessage,severityがcharなので、それぞれの文字列の長さとしてint n, int m を追加している。

TRNSYSのコンポーネントの開発って、基本的にFORTRANを想定しているので、その他の言語のサンプルってほとんど無いんですよね。こういうサンプルが出てくるとホント助かる。

Pocket

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です