并行处理 就是用n个机器可以实现 同时每个机器各自运行该机器上的qq。
#include <iostream.h>
#include <windows.h>
#include <mpi.h>
#include <stdio.h>
#include <stdlib.h>
int group_size;
int my_rank;
int p;
MPI_Status status;
MPI_Init(&argc,&argv);
MPI_Comn_size(MPI_COMN_WORLD,&group_size);
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank);
int main(int argc,char* argv[])
{
my_rank=p;
for(my_rank=0;my_rank<p;my_rank++)
//电脑里qq的路径 一定要是安装的路径 不能是快捷方式的路径 还有就是双// 号
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
return 0;
MPI_Finalize();
}
7 个解决方案
#1
错误如下
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argc' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argv' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2501: 'MPI_Init' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2373: 'MPI_Init' : redefinition; different type modifiers
c:\program files\mpich\sdk\include\mpi.h(448) : see declaration of 'MPI_Init'
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2065: 'MPI_COMN_WORLD' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2501: 'MPI_Comn_size' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2501: 'MPI_Comn_rank' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
执行 cl.exe 时出错.
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argc' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argv' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2501: 'MPI_Init' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2373: 'MPI_Init' : redefinition; different type modifiers
c:\program files\mpich\sdk\include\mpi.h(448) : see declaration of 'MPI_Init'
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2065: 'MPI_COMN_WORLD' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2501: 'MPI_Comn_size' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2501: 'MPI_Comn_rank' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
执行 cl.exe 时出错.
#2
友情帮顶
#3
#include <iostream.h>
#include <windows.h>
#include <mpi.h>
#include <stdio.h>
#include <stdlib.h>
int group_size;
int my_rank;
int p;
MPI_Status status;
/*
你下面三个方法是打算做什么?只是声明还是还是已有的方法要使用?如果只是声明则需要后面的代码中进行实现,估计你是想用这3个已有的方法,但是这3个方法没写在任何一个方法体中,怎么能被执行到呢?比如,你应该把他们写在int main()方法体内才会被执行到,写在这里只是声明而已。
*/
MPI_Init(&argc,&argv);//这两个参数前面没定义,不能使用;同时这个方法的使用方式有问题,比如参数类型等等,建议去看看这个方法的实现代码
MPI_Comn_size(MPI_COMN_WORLD,&group_size);//第一个参数前面没定义;同时这个方法使用方式有问题
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank););//第一个参数前面没定义;同时这个方法使用方式有问题
int main(int argc,char* argv[])
{
my_rank=p;
for(my_rank=0;my_rank<p;my_rank++)
//电脑里qq的路径 一定要是安装的路径 不能是快捷方式的路径 还有就是双// 号
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
return 0;
MPI_Finalize();
}
#4
MPI_Init(&argc,&argv);
MPI_Comn_size(MPI_COMN_WORLD,&group_size);
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank);
这3个是并行算法中 应用到的 节点数groud_size和该节点名称my_rank
是前面的头文件mpi.h中用到的定义
这个是必须要做的定义
MPI_Comn_size(MPI_COMN_WORLD,&group_size);
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank);
这3个是并行算法中 应用到的 节点数groud_size和该节点名称my_rank
是前面的头文件mpi.h中用到的定义
这个是必须要做的定义
#5
可是从你的错误报告上来看,很明显编译器把它们当成了definition,而mpi.h里又有同样的definition,所以各种各样的错误就出来了。而且所使用的参数编译器不认识。
小生不才,不能说的很透彻,等待高手,呵呵。
#6
mpi.h只是一个头文件 像group_size和my_rank还是要定义一下的
这个在所有并行算法中都有写出
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
这个函数的功能是运行一个exe文件
我这个程序在一台电脑已可以成功运行
我贴出的是我并行系统时 出现了问题
这个在所有并行算法中都有写出
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
这个函数的功能是运行一个exe文件
我这个程序在一台电脑已可以成功运行
我贴出的是我并行系统时 出现了问题
#7
没有修改project里的link,好像在后面要加一些东西。在tool里也要改一点东西
#1
错误如下
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argc' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argv' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2501: 'MPI_Init' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2373: 'MPI_Init' : redefinition; different type modifiers
c:\program files\mpich\sdk\include\mpi.h(448) : see declaration of 'MPI_Init'
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2065: 'MPI_COMN_WORLD' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2501: 'MPI_Comn_size' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2501: 'MPI_Comn_rank' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
执行 cl.exe 时出错.
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argc' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2065: 'argv' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2501: 'MPI_Init' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2373: 'MPI_Init' : redefinition; different type modifiers
c:\program files\mpich\sdk\include\mpi.h(448) : see declaration of 'MPI_Init'
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(10) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2065: 'MPI_COMN_WORLD' : undeclared identifier
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2501: 'MPI_Comn_size' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(11) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2501: 'MPI_Comn_rank' : missing storage-class or type specifiers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2078: too many initializers
C:\Documents and Settings\Administrator\桌面\12\aaa.cpp(12) : error C2440: 'initializing' : cannot convert from 'int *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
执行 cl.exe 时出错.
#2
友情帮顶
#3
#include <iostream.h>
#include <windows.h>
#include <mpi.h>
#include <stdio.h>
#include <stdlib.h>
int group_size;
int my_rank;
int p;
MPI_Status status;
/*
你下面三个方法是打算做什么?只是声明还是还是已有的方法要使用?如果只是声明则需要后面的代码中进行实现,估计你是想用这3个已有的方法,但是这3个方法没写在任何一个方法体中,怎么能被执行到呢?比如,你应该把他们写在int main()方法体内才会被执行到,写在这里只是声明而已。
*/
MPI_Init(&argc,&argv);//这两个参数前面没定义,不能使用;同时这个方法的使用方式有问题,比如参数类型等等,建议去看看这个方法的实现代码
MPI_Comn_size(MPI_COMN_WORLD,&group_size);//第一个参数前面没定义;同时这个方法使用方式有问题
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank););//第一个参数前面没定义;同时这个方法使用方式有问题
int main(int argc,char* argv[])
{
my_rank=p;
for(my_rank=0;my_rank<p;my_rank++)
//电脑里qq的路径 一定要是安装的路径 不能是快捷方式的路径 还有就是双// 号
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
return 0;
MPI_Finalize();
}
#4
MPI_Init(&argc,&argv);
MPI_Comn_size(MPI_COMN_WORLD,&group_size);
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank);
这3个是并行算法中 应用到的 节点数groud_size和该节点名称my_rank
是前面的头文件mpi.h中用到的定义
这个是必须要做的定义
MPI_Comn_size(MPI_COMN_WORLD,&group_size);
MPI_Comn_rank(MPI_COMN_WORLD,&my_rank);
这3个是并行算法中 应用到的 节点数groud_size和该节点名称my_rank
是前面的头文件mpi.h中用到的定义
这个是必须要做的定义
#5
可是从你的错误报告上来看,很明显编译器把它们当成了definition,而mpi.h里又有同样的definition,所以各种各样的错误就出来了。而且所使用的参数编译器不认识。
小生不才,不能说的很透彻,等待高手,呵呵。
#6
mpi.h只是一个头文件 像group_size和my_rank还是要定义一下的
这个在所有并行算法中都有写出
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
这个函数的功能是运行一个exe文件
我这个程序在一台电脑已可以成功运行
我贴出的是我并行系统时 出现了问题
这个在所有并行算法中都有写出
WinExec("C:\\Documents and Settings\\Administrator\\桌面\\qq.exe",SW_SHOW);
这个函数的功能是运行一个exe文件
我这个程序在一台电脑已可以成功运行
我贴出的是我并行系统时 出现了问题
#7
没有修改project里的link,好像在后面要加一些东西。在tool里也要改一点东西