#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "mpi.h"
#define BUFFER_SIZE 65536
int main (int argc, char **argv) {
int int_buff[BUFFER_SIZE];
char char_buff[BUFFER_SIZE];
int n, myid;
int buflen, ntimes;
double starttime, endtime;
MPI_Status status;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &myid);
buflen = 2;
if (myid == 0) {
int i;
for (i = 0 ; i++ ; i < 500 ) {
printf("Lala");
}
}
MPI_Finalize();
return EXIT_SUCCESS;
}
我正在使用mpiexec --hostfile hostfile -np 2 ping_pong
。没有打印任何内容,但是当我更改循环顶部 for(;;)
时它可以工作,为什么会这样?
最佳答案
for
循环中的表达式放置错误。 for
loop 的语法是
for(INITIALIZATION; CONDITION; INCREMENT/DECREMENT)
Statement
改变
for (i = 0 ; i++ ; i < 500 )
到
for (i = 0 ; i < 500; i++ )
关于c - MPI 为什么这个简单的循环不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21739805/