如何在 Fortran 中调用 C 函数并将值放入变量中返回 CHARACTER 字符串

问题描述

我正在尝试用 fortran 语言调用 c 语言函数调用。稍后调用它的目的是使 Fortran 语言程序能够读取串口。用c语言读取串口并发送到fortran语言。现在我正在尝试使用 C 和 Fortran 进行编程,但出现了问题。

Fortran 代码 (f_myname1.f90) 是

 program test
 IMPLICIT NONE

 character :: myName,R,S
 external myName

 S = myName()
 print*,"My Name is: ",S
  
end program test

C 代码 (c_myname1.c) 是

#include <stdio.h>
const char* myName_() {
  char *name = "Flavio";
  return name;
}

编译,结果为:

Compile and result fortran and c

谁能提出更直接的方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)