C에서 파일 끝(EOF)까지 표준 입력에서 데이터 읽기
C에서 사용자 입력으로 작업할 때 종종 필요한 경우가 있습니다. 파일의 끝(EOF)에 도달할 때까지 표준 입력(cin)에서 데이터를 읽습니다. EOF까지 읽으려고 할 때 고려해야 할 특정 제한 사항과 접근법이 있습니다.
한 가지 일반적인 오해는 cin.get(input, ' ')을 사용하여 EOF 또는 null 문자(' ')까지 데이터를 읽는다는 것입니다. 발생하면 원하는 결과를 얻을 수 있습니다. 그러나 ' '는 EOF를 나타내지 않으며 이 접근 방식은 EOF 또는 ' '가 발생할 때까지 읽습니다.
cin에서 EOF까지 데이터를 읽으려면 루프를 사용해야 합니다. std::getline() 함수는 이 목적을 위한 효과적인 방법을 제공합니다.
std::string line; while (std::getline(std::cin, line)) { std::cout << line << std::endl; }
std::getline()은 cin에서 입력을 읽고 이를 지정된 문자열 변수에 저장합니다. 기본 구분 기호는 다음과 같습니다. 개행 문자. 라인을 성공적으로 읽었는지 여부를 나타내는 부울 값을 반환합니다. EOF가 발생하면 std::getline()은 false를 반환하여 루프를 종료합니다.
EOF까지 읽을 때 루프를 요구하는 것이 제한처럼 보일 수 있지만 C에서는 이를 기억하는 것이 중요합니다. , EOF는 문자 자체가 아닙니다. 따라서 단순히 std::getline()을 한 번만 호출하여 EOF까지 모든 데이터를 읽는 것은 불가능합니다.
위 내용은 C에서 EOF까지 표준 입력에서 데이터를 읽는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!