검색결과 리스트
입출력에 해당되는 글 2건
- 2011.03.27 라인 입출력 함수
- 2011.02.22 비표준 입출력함수 getch(), getche()
글
라인 입출력 함수
언어로그/C/C++
2011. 3. 27. 21:07
라인단위로 입출력을 다루는 함수들에 대해서 알아보자. 널문자를 삽입해주는지 여부와 버퍼에서 개행문자를
제거하는지 여부에 주목하여 보자.
제거하는지 여부에 주목하여 보자.
scanf(const char *TEMPLATE, ...)
scanf 함수를 사용하여, 한 라인의 문자열을 읽을 수 있지만, 개행문자를 표준입력버퍼에 남겨놓는다.
연이은 읽기 동작에 오동작을 초래할 수 있기때문에, 입력버퍼에서 개행문자를 제거하는 것을 잊지 말자!
char* fgets(char *S, int COUNT, FILE *STREAM)
지정한 입력버퍼에서 최대 COUNT-1 개의 문자를 읽되, 엔터를 칠때까지 배열 S에 저장하는 함수이다.
배열의 공간이 충분하다면, 개행문자와 함께 널문자를 삽입한다. (엔터에 의해 종료)
하지만 공간이 충분하지 않다면, COUNT-1개의 문자와 널문자를 삽입하고 종료한다. (사이즈 제약의 의해 종료)
int fputs(const char *S, FILE *STREAM)
버퍼 S의 내용을 지정한 출력버퍼에 출력하는 함수로, 널문자를 개행문자로 변환하지 않는다.
fgets와 fputs 보다는 덜 사용되지만 라인단위로 입출력을 할 수 있는 다음과 같은 함수가 있다.
char* gets(char *S)
표준 입력버퍼에서 개행문자를 만날 때까지 읽는 함수로, 개행문자는 S에 저장하지 않지만, 입력퍼버에서는 제거한다
int puts(const char *S)
S 문자열을 표준출력버퍼에 출력하는 함수로 널문자를 만나면 개행문자로 변환하여 출력한다.
'언어로그 > C/C++' 카테고리의 다른 글
| 음수의 표현 (0) | 2011.06.13 |
|---|---|
| 문자열 조작함수 직접 구현하기 (2) | 2011.04.29 |
| 라인 입출력 함수 (0) | 2011.03.27 |
| 배열의 이해 (0) | 2011.03.27 |
| 기억부류(Storage Class) / 변수 (0) | 2011.03.27 |
| 전역변수와 지역변수 (0) | 2011.03.27 |
설정
트랙백
댓글
글
비표준 입출력함수 getch(), getche()
언어로그/C/C++
2011. 2. 22. 11:32
getch(), getche()는 입출력버퍼를 거치지 않는 비표준 입출력함수로 <conio.h> 헤더파일에
선언되어 있다. 표준이 아니기 때문에 시스템마다 함수 지원여부가 다를 수 있지만 대다수 시스템에서
지원한다고 한다
- int getch(void)
표준입력(키보드)로부터 1문자를 읽어오는 함수로, 버퍼에서 읽지 않고 바로 읽어온다.
- int getche(void)
getche 는 getch 와 동일한 기능을 하지만, 읽은 1문자를 바로 echo해 준다.
escape(이스케이프 문자)
- '\a' :beep sound
- '\t' : tab
- '\b' : back space
- '\0' : null character (아스키 코드값 0)
- ...
이 글은 스프링노트에서 작성되었습니다.
'언어로그 > C/C++' 카테고리의 다른 글
| 매크로, 연산자 (3) | 2011.03.10 |
|---|---|
| 표준입출력함수 getchar() / putchar() (0) | 2011.02.22 |
| 비표준 입출력함수 getch(), getche() (0) | 2011.02.22 |
| 표준입출력함수 printf() / scanf() (0) | 2011.02.22 |
| 음수의 표현 (0) | 2011.02.22 |
| C 언어 학습에 핵심. 변수와 상수 (0) | 2011.02.22 |