我想做到以下几点:C预处理器宏将Fortran程序的字符串转换为小写?
在一个FORTRAN程序
呼叫myPackageFunction( “MPI_User_function”)
...应转移BY AC PREPROCESSOR MAKRO到...
调用myPackageFunction(“mpi_user_function_”)
我想这样做的原因是我的包(平均MATLAB和Fortran用户)的用户不必知道关于nam对Fortran进行修改,但同时为用户执行此任务不会减慢完成包的功能。
有人知道我该怎么做吗?我会非常感谢任何帮助!
什么时候会发生变换,用户的FORTRAN代码是否会通过C预处理器运行?这很清楚。 – unwind 2011-05-03 12:18:11
是的,用户的FORTRAN代码将通过C预处理器运行。用户必须包含“myPackage.h”才能调用myPackageFunction。所以我可以在那里定义一个makro。可能是这样的:#define myPackageFunction(string)myPackageFunction() –
Sam
2011-05-03 12:33:26
它看起来像你试图将C例程传递给Fortran子例程,是吗?使用Fortran2003 Fortran <-> C互操作性,可以避免整个名称混乱问题,但如果我们更了解您要完成的任务,会更容易。 – 2011-05-03 12:50:34