getline(cin, x)을 사용하여 완전한 사용자 입력을 얻는 방법
프로그래밍에서 사용자 입력을 읽는 것은 기본적인 작업입니다. cin을 사용하여 개별 문자나 단어를 검색할 수 있지만 전체 텍스트 줄을 처리할 때는 유틸리티가 제한될 수 있습니다. 이 문제를 해결하려면 보다 적절한 접근 방식이 필요합니다.
사용자에게 파일에 쓰라는 메시지가 표시되는 다음 코드를 고려하세요.
#include <iostream> #include <cstdlib> #include <cstring> #include <fstream> using namespace std; int main() { char x; cout << "Would you like to write to a file?" << endl; cin >> x; if (x == 'y' || x == 'Y') { string y; cout << "What would you like to write?" << endl; getline(cin, y); // Replace cin >> y; ofstream file; file.open("Characters.txt"); file << strlen(y) << " Characters." << endl; file << endl; file << y; file.close(); cout << "Done. \a" << endl; } else { cout << "K, Bye." << endl; } return 0; }
원본 코드에서 다음 줄은 신>> 와이; 사용자가 입력한 텍스트 전체 줄이 아닌 한 단어만 읽습니다. 이를 수정하려면 cin 함수를 getline(cin, y);로 수정해야 합니다.
getline() 함수를 사용하면 표준 입력(예: 사용자 키보드)에서 입력의 전체 줄을 읽을 수 있습니다. 문자열 변수 y에 저장합니다. 이렇게 하면 후속 코드가 사용자가 입력한 텍스트의 전체 줄에 액세스할 수 있으므로 이를 파일에 쓰거나 필요에 따라 다른 작업을 수행할 수 있습니다.
위 내용은 완전한 사용자 입력을 얻기 위해 `getline(cin, x)`을 사용하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!