【发布时间】:2013-05-18 14:16:20
【问题描述】:
我正在尝试使用管道方法将大量数据(双数)从 FORTRAN 程序传递到 C++ 程序。
我关注 http://msdn.microsoft.com/en-us/library/ms682499(VS.85).aspx 的 C++ 部分。但对于 FORTRAN 部分(即子处理器),我不知道如何正确写入数据。我是否必须使用WRITE(*,*) 在控制台上写下所有数字,然后使用 C++ 程序读取?
我写数据的 FORTRAN 代码:
DO 281 I=1,NDOF
DO 280 J=1,UBW
IF (S(I,J).NE.0) THEN
WRITE (*, 2770) I,(J+I-1)
WRITE (*,2760) (S(I,J))
ENDIF
280 CONTINUE
281 CONTINUE
我不认为我的 FORTRAN 部分是正确的,因为在控制台上书写需要很多时间! (它甚至比通过文件传递数据还要慢!!!) 任何建议表示赞赏。
【问题讨论】:
-
请在 C++ 中发布一些代码,您 fork 和设置管道的部分 This question 可能会有所帮助
-
看到这个link
-
Passing large amount of data from FORTRAN to C++ 的可能重复项——请不要在 1 小时后再次提出相同的问题。