我要寫入一個文件檔,鍵盤輸入 姓名 電話 Email
如下:
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main()
{
ofstream myFile;
int n = 0;
char str1[50];
char str2[50];
myFile.open("Ex15_1.dat",ios::out)
cout << "請輸入姓名、電話、Email地址" << endl;
while(1)
{
cin >> str1 >> n >> str2;
if (!strlen(str1) ==0) //若字串長度不等於0
{
myFile << str1 << '\t' << n << '\t' << str2 << endl;
}
else
break;
}
myFile.close();
return 0;
}
結果按Enter不會中斷這個迴圈而且會一直複製
例如 我輸入 police 110 gmail
hospital 119 hotmail
文件檔會是最後一行輸入的一直複製
police 110 gmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
hospital 119 hotmail
.....
想了很久,不知道要怎麼修正,求解