system("cd ./test && pwd") system调用是开了新的线程(或者进程,记不清楚了),和当前进程一样的环境变量,system里执行改变环境变量,是当前进程的(子进程),不会改到调用进程(父进程).当system返回后.改变当前进程的你用 chdir("./test");// 试一下getcwd()
你是c程序里面嵌入system("cd ./test")吗?如果是那应该没有问题,你只要在c程序里加入system("pwd"),在终端上看打印结果就行了。