将文件命名为C
naming the file in c++
当我运行此代码时,第二&第三文件的名称第一个字符消失了例如,如果我命名了第二个文件set2.txt,它将为et2.txt
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
fstream set1,set2,set3;
string name;
cout<<"Enter set1 name: ";
cin.ignore();
getline(cin , name);
set1.open(name,ios::out);
cout<<"Enter set2 name: ";
cin.ignore();
getline(cin , name);
set2.open(name,ios::out);
cout<<"Enter set3 name: ";
cin.ignore();
getline(cin , name);
set3.open(name,ios::out);
}
第一个字符消失
那是因为您忽略了第一个字符
cin.ignore();
在阅读
的文字线之前getline(cin , name);
这两行的顺序错误。相反,他们应该是
getline(cin , name);
cin.ignore();
cin.ignore()
的目的是在之后从输入流中删除Newline字符,您使用getline()
。
相关文章:
- 终端不会为C++文件创建.exe文件吗
- 在Arduino中将PWM通道命名为LEDC是否有特定原因
- 仅为C++文件(.h、.cpp、.cxx、.c)生成标记文件
- 如何为文件路径使用变量?
- C++ std::future 方法应该<T>命名为 is_ready() 还是 ready()?
- 录制后无法重命名 rosbag 文件
- 具有全局符号的命名为STD符号Interfier
- 命名为pybind11中的默认参数
- C - 为文件写入void函数值
- 将文件命名为C
- 将文件重命名为已存在的文件名
- 如果(玩家[P] .setCoin(Gameboard,Input))将其命名为“在线”游戏板的攻击函数)
- 将 .c 文件重命名为 .cpp,导入 Cython 库失败
- 为什么将可执行文件重命名为临时文件的此代码段不能按预期工作?
- 根据用户输入的字符串命名输出文件
- 如何在 C++ 中将文件从 ext4 文件系统重命名为 ntfs 文件系统
- 如何将文件描述符 (int fd) 转换为文件指针 ( 文件* fp )
- 从工作iOS项目中导入.cpp文件并将其重命名为.mm问题
- 在C/C++中将文件重命名为unicode名称
- 在一个c++项目中(文件大多是.cpp),如果一个文件只包含c代码,它应该被命名为.c还是.cpp ?