>  기사  >  백엔드 개발  >  완전한 사용자 입력을 얻기 위해 `getline(cin, x)`을 사용하는 이유는 무엇입니까?

완전한 사용자 입력을 얻기 위해 `getline(cin, x)`을 사용하는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-20 11:32:50903검색

Why Use `getline(cin, x)` to Get Complete User Input?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.