C++ 从根目录更改目录(C+;+;)

C++ 从根目录更改目录(C+;+;),c++,root-framework,C++,Root Framework,我想更改ROOT目录以分析某个项目文件中的数据集。根目录存储在这里“C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ROOT 6.16.00”。我要访问的项目文件中的数据位于“C:\Users\aaa\Desktop\project”中。如何更改目录 我试过: gSystem->cd("C:\Users\aaa\Desktop\Project"); 但这是行不通的。出现的错误是 \U不带以下十六进制数字 “使用未声明的标识符'cd

我想更改ROOT目录以分析某个项目文件中的数据集。根目录存储在这里“C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ROOT 6.16.00”。我要访问的项目文件中的数据位于“C:\Users\aaa\Desktop\project”中。如何更改目录

我试过:

gSystem->cd("C:\Users\aaa\Desktop\Project");
但这是行不通的。出现的错误是 \U不带以下十六进制数字

“使用未声明的标识符'cd'”


出现错误:“使用未声明的标识符‘cd’”。是否不执行所需操作?还是直接编辑全局?我怀疑问题是C++如何处理反斜杠和Windows在目录名中的使用。也就是说,从C++的角度来看,
\U
是单个字符(
\n
=换行符,
\t
=制表符,…)。由于您实际上需要反斜杠,而不是转义任何其他字符,请尝试
gSystem->cd(“C:\\Users\\aaa\\Desktop\\Project”)(即,使用两个反斜杠,其中第一个表示“现在有一个特殊字符”,第二个表示“仅一个反斜杠”,以获得一个反斜杠)。这对我不起作用,但我在Linux终端上使用root运行了所有操作。出现错误:“使用未声明的标识符‘cd’”。您不想这样做吗?还是直接编辑全局?我怀疑问题是C++如何处理反斜杠和Windows在目录名中的使用。也就是说,从C++的角度来看,
\U
是单个字符(
\n
=换行符,
\t
=制表符,…)。由于您实际上需要反斜杠,而不是转义任何其他字符,请尝试
gSystem->cd(“C:\\Users\\aaa\\Desktop\\Project”)(即,使用两个反斜杠,第一个表示“现在有一个特殊字符”,第二个表示“只是一个反斜杠”,以获得一个反斜杠)。这对我不起作用,但我通过在Linux终端上使用root成功地运行了所有操作。