C++에서 puutchar 와 getchar 함수 의 세부 사항 및 활용
기능 설명 은 다음 과 같다.
다음은 예 를 들 어 함수 의 용법 을 설명 한다.
#include <stdio.h>
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
putchar(ch);
return 0;
}
결과:키보드 의 리 턴 키 를 누 르 면 getchar 함 수 는 화면 에 입력 한 문자 와 리 턴 문자'를 읽 고 putchar 함 수 는 이 문 자 를 화면 에 다시 인쇄 하여 리 턴 효 과 를 나타 내 는 것 을 알 수 있 습 니 다.키보드 에 있 는 ctrl+z 키 를 누 르 면 getchar 가 EOF(문자 읽 기 실패 의미)를 읽 게 되 며,이때 getchar 는 읽 기 가 끝 납 니 다.
적용:
#include <stdio.h>
int main()
{
char password[20] = { 0 };
printf(" :>
");
scanf("%s", password);
printf(" <Y/N>:");
int ch = getchar();
if (ch == 'Y')
{
printf(" !");
}
else
{
printf(" !");
}
return 0;
}
전체적으로 문법 적 인 오 류 는 없 지만 왜 위의 상황 이 나 타 났 을 까?getchar 함수 의 읽 기 디 테 일 을 중점적으로 설명해 야 합 니 다.
그림:
먼저 scanf 는 빈 칸 앞의 문자(즉"12345")를 모두 가 져 옵 니 다.이 때 버퍼 에"(빈 칸)avcde"가 남 고 getchar 함 수 는 남 은 첫 번 째 문 자 를 읽 습 니 다.읽 은 첫 번 째"(빈 칸)"은"Y"가 아니 기 때문에"확인 실패"를 표시 합 니 다.어떻게 이 문 제 를 해결 합 니까?남 은 문 자 를 모두 가 져 와 야 합 니 다("포함").키보드 에서 Enter 키 를 누 르 면 시스템 이 기본적으로""를 입력 하고 입력 해 야 읽 을 수 있 기 때 문 입 니 다.
다음 개선 사항:
char password[20] = { 0 };
printf(" :>
");
scanf("%s", password);
printf(" <Y/N>:");
int tmp = 0;
//
while ((tmp = getchar()) != '
')// '
' ,
{
;
}
int ch = getchar();
if (ch == 'Y')
{
printf(" !");
}
else
{
printf(" !");
}
이 때 는 정상 적 인 논리 에 따라 운행 할 수 있다.
이상 은 getchar 함수 에 대한 작은 세부 사항 에 대한 이해 입 니 다.만약 부당 하 다 면 지적 을 환영 합 니 다!
C++에서 puutchar 와 getchar 함수 의 세부 사항 및 활용 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 puutchar 와 getchar 함수 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
hdu 1717 소수 화 점수 2 (수학)소수 화 점수 2 레이 는 수학 시간 에 선생님 의 말씀 을 듣 고 모든 소수 가 점수 로 표시 되 는 형식 이 라 고 말 했다. 그 는 녹 기 시 작 했 고 곧 완성 되 었 다. 그러나 그 는 또 하나의 문 제 를...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.