我正在尝试将流程等级发送到右侧的流程中。我用的时候
MPI_Send(msg, 100, MPI_CHAR, right, 99, MPI_COMM_WORLD);
MPI_Recv(msg, 100, MPI_CHAR, left, 99, MPI_COMM_WORLD,&status);
MSG是Char [100],一切都还好。现在,当我改变它时:
MPI_Send(value, 1, MPI_INT, right, 99, MPI_COMM_WORLD);
MPI_Recv(value, 1, MPI_INT, left, 99, MPI_COMM_WORLD,&status);
其中int value = value + rank,我在编译期间为每个MPI_Send和MPI_Recv收到错误:传递参数1使得指针来自整数而没有强制转换。有谁知道如何解决它?
由于
答案 0 :(得分:1)
MPI_Send(&value, 1, MPI_INT, right, 99, MPI_COMM_WORLD);
MPI_Recv(&value, 1, MPI_INT, left, 99, MPI_COMM_WORLD,&status);