문자 처리 라이브러리 함수
#include <ctype.h>
함수 | 설명 |
isalpha(c) | c가 영문자인가?(a-z, A-Z) |
isupper(c) | c가 대문자인가?(A-Z) |
islower(c) | c가 소문자인가?(a-z) |
isdigit(c) | c가 숫자인가?(0-9) |
isalnum(c) | c가 영문자이나 숫자인가?(a-z, A-Z, 0-9) |
isxdigit(c) | c가 16진수의 숫자인가?(0-9, A-F, a-f) |
isspace(c) | c가 공백문자인가?(‘ ’, ‘\n', '\t', '\v', '\r') |
ispunct(c) | c가 구두점 문자인가? |
isprint(c) | C가 출력가능한 문자인가? |
iscntrl(c) | c가 제어 문자인가? |
isascii(c) | c가 아스키 코드인가? |
toupper(c) | c를 대문자로 바꾼다. |
tolower(c) | c를 소문자로 바꾼다. |
toascii(c) | c를 아스키 코드로 바꾼다. |
#include <stdio.h>
#include <ctype.h>
int main(void)
{
int c;
while ((c = getchar()) != EOF)
// 1) 문자를 읽어서 c에 저장
// 2) c와 EOF(End of File)인지 확인
{
if (islower(c))
c = toupper(c);
//c가 소문자라면 대문자로 변환
putchar(c);
}
return 0;
}
문자열 처리 라이브러리
#include <string.h>
함수 | 설명 |
size_t strlen(const char *s) | 문자열 s의 길이를 구함. (NULL 제외) |
char *strcpy(char *s1, const char *s2) | s2를 s1에 복사함. s1값을 반환 |
char *strcat(char *s1, const char *s2) | s2를 s1의 끝에 붙여 넣음. s1값을 반환 |
int strcmp(const char *s1, const char *s2) | s1과 s2를 비교하여 s1이 s2보다 앞에 있다면 –값을, s1이 s2보다 뒤에 있다면 +값을, 같다면 0을 반환 |
char *strncpy(char *s1, const char *s2, size_t n) | s2의 최대 n개의 문자를 s1에 복사함. |
char *strncat(char *s1, const char *s2, size_t n) | s2의 최대 n개의 문자를 s1의 끝에 붙여 넣음. |
int strncmp(const char *s1, const char *s2, size_t n) | 최대 n개의 문자까지 s1과 s2를 비교함. |
char *strchr(const char *s, int c) | 문자열 s안에서 문자 c가 처음 나타나는 곳을 반환함. |
char *strrchr(const char *s, int c) | 문자열 s안에서 문자 c가 마지막으로 나타나는 곳을 반환함. |
char *strstr(const char *s1, const char *s2) | 문자열 s1에서 문자열 s2를 찾음. |
char *strtok(char *s, const char *delimeter) | 문자열 s를 delimeter가 나오는 곳마다 분리하여 반환함 |
'2학년 2학기 > c언어' 카테고리의 다른 글
11-2장 구조체 변수의 대입과 비교 (0) | 2024.11.11 |
---|---|
11-1장 구조체 (0) | 2024.11.11 |
10-6장 문자열의 배열 (0) | 2024.11.05 |
10-5장 문자열과 포인터 (0) | 2024.11.05 |
10-4장 문자열을 수치로 변환 (0) | 2024.11.04 |