我试图将文件写入文件,但是一旦我输入名称,它就会提示点击关闭
这是我的代码
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void login(){
char name, email, address;
ofstream myfile;
myfile.open ("user.dll");
cout << "Enter Name : ";
cin >> name;
cout << "Enter Email : ";
cin >> email;
cout << "Enter Address : ";
cin >> address;
myfile <<name << email << address << endl;
}
int main()
{
login();
system("pause");
return(0);
}
并且是显示器
答案 0 :(得分:2)
您应该输入std::string
而不是char
s。变化
char name, email, address;
要
string name, email, address;
为什么它似乎跳过了您的第2和第3 cin
次提示?
您使用std::cin
来读取流中的输入。在第一个提示中,您输入了"chrys"
,其中向流中添加了5个char
。
如果您按照cin
的操作进行操作,那么您基本上已经:
name = 'c'
email = 'h'
address = 'r'
例如,如果您使用getch()
,那就显而易见了。如果您设置在char
上,则必须使用类似C的方法读取char[]
,但由于这是C ++,std::string
对于您的案例来说是更好的选择。