문자처리 라이브러리
학습내용
- 문자 문자열 입출력
- 문자 문자열 처리함수
학습목표
- 문자와 문자열 입출력 함수를 알고 활용할 수 있다.
- 문자와 문자열을 처리하는 함수를 활용할 수 있다.
문자 문자열 입출력
1. 문자 관련 입출력 함수
1) 라이브러리
(1) scanf(“% ch ), printf (“%c”, ch);
(2) getc(); putc():
(3) _getch (); _getche (); _putch();
(4) getchar(); putchar();
2) getc() putc()
(1) int getc(FILE *stream);
- 지정한 스트림으로 부터 문자 읽기
- 입력문자 ASCII코드 값을 리턴, 오류 시는 EOF리턴
(2) int putc( int ch, FILE *stream);
- 지정한 스틀임에 저장한 값을 출력
- 정상 출력 시 출력문자 리턴, 오류 시는 EOF리턴
3) _getch (); _getche (); _putch(); - conio.h
int_getch(void); int_getche(void); | int_putch(int ch); |
* 키보트로부터 입력되는 문자를 읽음 * 입력 문자의 ASCII코드를 리턴 * _getche()는 echo를 사용 * 버퍼를 사용하지 않는 입력 |
* 화면에 지정한 값을 출력 * 정상 출력 시 출력문자 리턴, 오류 시 EOF 리턴 |
4) getchar() putchar()
int getchar(void); |
* 키보트로부터 입력되는 문자를 읽음 * 입력 문자의 ASCII코드를 리턴 * 버퍼를 사용하는 입력 |
int putchar(int ch); |
* 화면에 지정한 값을 출력 * 정상 출력 시 출력문자 리턴, 오류 시 EOF 리턴 |
2. 문자열 관련 입출력 함수
1) gets() gets_s() puts()
char *gets(char *str); char *gets_s(char *str, rsize_t n); |
int_puts(char *str); |
* 키보트로부터 입력되는 문자들을 \n까지 읽어서 str에 입력 * "\n"을 null로 변환하여 저장 |
* 화면에 지정한 문자열을 출력 * null(\0)을 \n으로 변환하여 출력 * 정상 출력 시 음수가 아닌 값을 리턴, 오류 시 EOF 리턴 |
문자 문자열 처리함수
1. 문자, 문자열 처리 관련 라이브러리
2. 자주 사용하는 함수 이용하기
1) isalpha() : if( (‘A’<=ch && 'Z'>=ch) || ('a'<=ch && 'z'>=ch) )
(1) int isalpha(int ch);
(2) 헤더파일 : ctype.h
(3) 인수가 알파벳 문자인지를 확인
(4) 알파벳문자이면 0이 아닌 값을 리턴
(5) 알파벳문자가 아니면 0값을 리턴
2) islower() isupper() : 헤더파일 : ctype.h
(1) int islower( int ch) : 인수의 문자가 소문자이면 0이 아닌 값, 그 외이면 0을 리턴
(2) int isupper( int ch) : 인수의 문자가 대문자이면 0이 아닌 값, 그 외이면 0을 리턴
3) strlen()
(1) 헤더파일 : string.h
(2) size_t strlen( const char *str);
(3) 문자열에서 null 전까지의 길이를 리턴
4) strcpy()
(1) 헤더파일 : string.h
(2) char *strcpy( char *dest, const char *src );
(3) null 문자를 포함하여 src의 문자열을 dest로 복사
(4) src문자열의 길이가 dest 문자 배열의 크기보다 크면 실행 에러가 발생할 수 있음
(5) 헤더파일 : string.h
(6) error_t *strcpy_s( char *dest, sizt_t sizedest, const char *src );
(7) null 문자를 포함하여 src의 문자열을 dest로 복사
(8) sizedest에 복사할 최대 문자 수(dest의 크기를 기술)
(9) 함수 성공 시 0, 그 외 오류번호를 리턴
5) strcmp()
char a[10]="Hello"; if(a=="Hello") --> 주소와의 비교 |
(1) 헤더파일 : string.h
(2) int strcmp( const char *lhs, const char *rhs );
(3) null 문자 전까지 각 문자를 비교
(4) 동일하면 0을 리턴, lhs가 크면 양수, rhs가 크면 음수를 리턴
학습정리
1. 문자 문자열 입출력
- 문자를 입력받을 때 사용 가능한 표준 C라이브러리 함수로 getc(), getchar()가 있음
- 문자를 출력할 때 사용 가능한 표준 C라이브러리 함수로 putc(), putchar()가 있음
- 버퍼를 사용하지 않는 입력 라이브러리 함수로 _getch(), _getche()가 있음
- getche()는 에코(echo)를 사용하여 사용자가 입력한 내용을 화면에 보여줌
- 문자열을 입력받는 표준 라이브러리 함수는 gets(), gets_s()가 있음
2. 문자 문자열 처리함수
- 대표적인 문자나 문자열을 처리하는 라이브러리 함수를 선언한 헤더파일은 ctype.h와 string.h가 있음
- isalpah()는 알파벳 문자 여부를 판단하여 리턴함
- strlen()함수는 문자열에서 null을 제외한 문자열의 길이를 리턴함
- strcpy()함수는 null을 포함하여 복사함
- strcmp()함수는 동일한 경우 0을 리턴함