C fortran77 + MPI program
program main
include 'mpif.h'
character * (MPI_MAX_PROCESSOR_NAME)
processor_name
integer myid,numprocs,namelen,rc,ierr
call MPI_INIT(ierr)
call MPI_COMM_RANK(MPI_COMM_WORLD,myid,ierr)
call MPI_COMM_SIZE(MPI_COMM_WORLD,numprocs,ierr)
call MPI_GET_PROCESSOR_NAME(processor_name,namelen,ierr)
write(*,10) myid,numprocs,processor_name
10 FORMAT('Hello World! Process ',I2,' of',I1,' on ',20A)
call MPI_FINALIZE(rc)
end
回定格式 Fixed Format
规定程代码每一行中每个字段的意义,第7~72个字符是用来写程序,每一行的前五个字符只能是空格或数字,数字用来作为行标,每一行的第6个字符只能是空格或“0”以外的字符
如没有6个字符的缩进则
Error: Non-numeric character in statement label at
对于每一行
第1 个字符 如果是C、c或*,则该行为注释
第1~5个字符 如果是数字,则为行标号,否则只能为空格
第6个字符 如果是"0"以外的任何字符,表示这一行程序会接续上一行
第7~72个字符 写程序
每73个字符之后 不使用,超过的部分被忽略,或有的编译器报错
Free Format 自由格式
!号为注释
每行可132个字符
行号放在程序的最前面
===
上面代码的格式化输出中write(*,10)则要求后面的变量按标号为10的代码格式化输出,如果没有标号为10的代码,报错
Error: Missing format label at