我正在努力解決一個奇怪的問題。 我要創造我的程序的解決方案的文件夾,我已經寫了下面的代碼:_mkdir奇怪的行爲C++
timer = time(NULL);
path.assign(".\\Solution_");
path.append(ctime(&timer));
ch1 = ':';
ch2 = '_';
for (i = 0; i < path.length(); ++i) {
if (path[i] == ch1 || path[i] == ' ')
path[i] = ch2;
}
mkdir(path.c_str());
它不創造任何即使路徑等於「 \ Solution_Thu_Jun_12_10_10_31_2014」如果我輸入
mkdir(".\\test");
它工作正常。 我做了很多測試,我盡我所能,但我無法弄清楚什麼是錯的。 任何人都可以幫助我嗎? 最佳, 羅伯託
詳細信息: 即使我使用mkdir(path.c_str());
與路徑等於「Solution_Thu_Jun_12_11_52_04_2014」(沒有任何\),它不反正工作,並在另一邊「的mkdir(‘測試’);」作品。
解決方案: 好吧,有一個隱藏的換行符。 感謝大家的幫助: - )!!!
你在嵌入式系統上運行? IIRC mkdir不是該標準的一部分。 –
該問題是由於通過反斜槓'\'逃脫。做'。\\解決方案...'應該可以工作。 –
當你在'mkdir(path.c_str())之前'cout path.cstr()'時輸出什麼?如果用'mkdir(「。\\ Solution_Thu_Jun_12_10_10_31_2014」);''替換mkdir(「。\\ test」);它會工作正常嗎? – Aserre