cout << "Enter your full name";
char* name ;
cin >> name;
if( _mkdir("c:\\names") == 0 ) {
cout << "directory successfully created";
} else {
cout << "there was a problem creating a directory";
}
现在我想在目录names
中创建一个文件(一个.txt 文件),其名称与用户
的名称相同>。我的意思是用户在 cin >> name;
期间输入的名称。
我该怎么做?
ofstream writeName( "c:/names/????);
----> 问题
最佳答案
使用 std::string
而不是 char*
。因为它是您的代码具有未定义的行为。使用 std::getline
而不是 >>
。使用 >>>
仅输入第一个以空格分隔的“单词”。然后,在 std::string
中组成完整路径。标准字符串类支持连接,所以这应该很容易。
比如说,如果那个字符串是path
,
std::ofstream f( path.c_str() );
干杯,
关于c++ - 创建与输入同名的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6530120/