본문 바로가기

공부28

scanf 입력 무시1 (공백 제외) 코드와 결과부터 비교해보자. 공백 제외 공백 포함 scanf를 입력했을 때 입력이 무시되어 발생한 현상인데, 정수를 입력받은 후 Enter키를 칠 때 이것을 %c가 개행(\n) 문자로 입력 받았기 때문이다. (= 그렇기 때문에 입력을 받지 않았음에도 다음 입력으로 넘어가는 것) 해결하기 위해서는 scanf(" %c")처럼 앞에 한번 띄워주고 입력받도록 하면 된다. 이는 남겨진 공백을 무시한다는 의미이며, \n는 남겨진 공백으로 처리되어 무시된다. 2021. 7. 7.
[C] 문자 입출력 라이브러리 문자를 입출력하는 함수들 입출력 함수 설명 int getchar(void) 하나의 문자를 읽어서 반환한다. void putchar(int c) 변수 c에 저장된 문자를 출력한다. int _getch(void) 하나의 문자를 읽어서 반환한다. (버퍼 사용 x) void _putch(int c) 변수 c에 저장된 문자를 출력한다. (버퍼 사용x) 반환형이 int인 이유: 입력의 끝을 나타내는 EOF(End Of File) 문자를 체크하기 위함 문자 입력 → 버퍼로 이동 → \0 입력 → 프로그램으로 전달 _getch()와 putch() 함수를 사용하려면 를 포함해야 함 비교 헤더파일 버퍼사용여부 에코여부 응답성 문자수정여부 getchar() O (엔터키로 입력됨) O 줄단위 가능 _getch() X X 문자.. 2021. 5. 30.
C에서 사용 가능한 변수의 저장 유형 저장유형 키워드 정의되는 위치 범위 생존 시간 자동 auto 함수 내부 지역 임시 레지스터 register 함수 내부 지역 임시 정적 지역 static 함수 내부 지역 영구 전역 없음 함수 외부 모든 소스 파일 영구 정적 전역 static 함수 외부 하나의 소스 파일 영구 외부 참조 extern 함수 외부 모든 소스 파일 2021. 5. 18.