컴퓨터에서는 각각의 문자에 숫자코드를 붙여서 표시한다.
아스키코드(ASCII code): 표준적인 8비트 문자코드
유니코드(unicode) : 표준적인 16비트 문자코드
char s[] = "Hello";
문자열 복사방법
char s[10]; strcpy(s, "Hello")//문자열 복사 //함수정의 void strcpy(char *a, char *b); strlen("Hello")//크기는 5가된다. |
[문자열 처리 함수]
함수 |
설명 |
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를 아스키 코드로 바꾼다. |
함수 |
설명 |
strlen(s) |
문자열 s의 길이를 구한다. |
strcpy(s1, s2) |
s2를 s1에 복사한다. |
strcat(s1, s2) |
s2를 s1의 끝에 붙여넣는다. |
strcmp(s1, s2) |
s1과 s2를 비교한다. |
strncpy(s1, s2, n) |
s2의 최대 n개의 문자를 s1에 복사한다. |
strncat(s1, s2, n) |
s2의 최대 n개의 문자를 s1의 끝에 붙여넣는다. |
strncmp(s1, s2, n) |
최대 n개의 문자까지 s1과 s2를 비교한다. |
strchr(s, c) |
문자열 s안에서 문자 c를 찾는다. |
strstr(s1, s2) |
문자열 s1에서 문자열 s2를 찾는다. |
int strcmp(const char *s1, const char *s2);
반환값 |
s1과 s2의 관계 |
<0 |
s1이 s2보다 작다 |
0 |
s1이 s2와 같다. |
>0 |
s1이 s2보다 크다. |