C++控制台中的system("start xxx")的困惑
是不是system("start xxx");中的xxx只能是绝对路径?不能是关于本程序的相对路径吗?我无论是用./ 、 / 、\等方式都不管用,请各位帮忙看看
[解决办法]
使用getcwd()获得程序的当前路径,再把xxx加入到当前路径组成绝对路径即可。
[解决办法]
#include <stdio.h>#include "stdlib.h"#include "direct.h"#include <string.h>#define MAXPATH 250int main(void){ char buffer[MAXPATH]; getcwd(buffer, MAXPATH); printf("The current directory is: %s\n", buffer); char relative_path[] ="/data/in.txt"; strcat( buffer, relative_path); printf("The current directory is: %s\n", buffer); char command[MAXPATH] = "start "; strcat( command, buffer ); system( command ); return 0;}
[解决办法]
不会吧, 进程的工作目录是你启动程序时所在的目录,不是程序摆在的目录.
[解决办法]