如何用MPI_Character实现MPI_Send?

时间:2012-04-09 01:57:50

标签: c character fortran mpi

在fortran中,我可以将字符串声明为:

character*80 mystring

然后将其发送为:

call MPI_Send(mystring,len(mystring),MPI_CHARACTER,...,ierr)

或者,我可以将我的字符串声明为一个字符数组(更符合传统上用C语言完成的方式)

character mystring(80)

然后将其发送为:

call MPI_Send(mystring,80,MPI_CHARACTER,...,ierr)

我的理解是这两个调用在调用C函数时会有不同的接口。 (前者通常由编译器通过传递附加参数的值来实现,该值保存字符串的长度,而后者不传递该参数)。那么,MPI实现(通常用C语言编写)如何知道差异?

1 个答案:

答案 0 :(得分:1)