파일에 쓰는 데 문제가 있습니다. 공백 문자를 쓰면 각 단어를 한 줄로 씁니다. 왜?공백이있는 파일의 문자열 쓰기
void backstart()
{
thread t1(backing);
thread t2(thr2);
t1.join();
t2.join();
}
void thr2()
{
string tmp;
tmp = "";
while (tmp != "/exit")
{
cin >> tmp;
if (tmp != "/exit")
{
writefile(tmp);
}
}
runing = false;
}
void writefile(string msg)
{
ofstream myfile("file.txt", ios::out | ios::app);
myfile << userna + ": " + msg + ",\n";
myfile.close();
}
감사 데이먼
'cin >> tmp'는 공백으로 분리됩니다. 어쩌면 ['getline'] (http://en.cppreference.com/w/cpp/string/basic_string/getline)을보십시오. – BoBTFish
감사합니다. 그것은 정말로 빠르다! 이제 완벽하게 실행 중입니다! 나는 C++에서 새롭기 때문에 저것을 몰랐습니다. ^^ –
문제 없습니다. 나는 내 대답에 전체 읽기 루프를 철자했다. 추측과 무작위 검색으로 배우려고하지 않는 것이 좋습니다. 당신은 많은 잘못된 것들과 나쁜 습관을 배울 것입니다. 어쩌면 [좋은 책] (http://stackoverflow.com/q/388242/1171191)을 사용해보십시오. – BoBTFish