为什么用chdir而不用system
system("cd ..") 和 chdir(dir) 实际上执行了不同的操作,虽然目标可能是相似的,但它们的作用和实现方式不同。
- 
system("cd .."):- system函数是一个C标准库函数,用于执行系统命令。
- 在 system("cd ..")中,它会启动一个新的shell进程,并在该shell进程中执行cd ..命令,该命令用于切换到上一级目录。
- 但是,system函数在新的shell进程中执行命令,对当前程序没有影响。即使system("cd ..")可以切换到上一级目录,但这种切换对于当前程序是不可见的。
 
- 
chdir(dir):- chdir是一个C标准库函数,用于改变程序的当前工作目录。
- chdir(dir)直接改变了当前程序的工作目录,而不会启动新的进程。这样可以确保程序在同一个进程中继续执行,并在新目录中进行操作。
 
如果你想改变程序的当前工作目录,而不影响程序的执行流程和状态,你应该使用 chdir(dir)。如果你只想在当前目录中执行一个命令,可以考虑使用 system 函数。根据你的具体需求和情境选择合适的方式。通常情况下,如果你只需要切换目录,建议使用 chdir 函数,因为它更直接、更高效,不需要启动新进程。

 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号