[英]Taking path to file from variable in C, C++
我正在使用 C、C++ 和dirent.h
做一個小項目。 我想問一下是否可以從變量中獲取文件夾/文件的路徑:
string fileName;
cout << "Create new file" << endl;
cin>>fileName;
CreateDirectory(documentLocation.c_str()+fileName.c_str(), NULL);
documentLocation
是我在程序開始時提供的變量,我想在其中創建一個新目錄。 添加fileName
,我想在這個文件夾中創建一個新目錄。 但我收到一個錯誤:
表達式必須具有整數或枚舉類型
您不能使用+
連接 C 字符串。 首先連接std::string
s,然后從中獲取 C 字符串。
CreateDirectory((documentLocation + fileName).c_str(), NULL);
c_str()
返回一個const char *
,所以在
documentLocation.c_str()+fileName.c_str()
您嘗試添加兩個const char *
,這不起作用。
std::string
重載+
運算符:
std::string path = documentLocation + fileName;
CreateDirectory(path.c_str(), NULL);
首先將兩個字符串相加(連接),然后取結果的c_str()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.