함수의종류
※함수를 쓰기위해 먼저 string.h헤더파일을 선언해야합니다.
strlen
문자의길이나 배열의길이를 반환합니다.
사용예↓
1 2 3 4 5 6 7 | #include<stdio.h> #include<string.h> int main(void) { char a[10] = "Hello"; printf("%d", strlen(a); } | cs |
strcpy
오른쪽값을 왼쪽값에 복사합니다.
사용예↓
1 2 3 4 5 6 7 8 | #include<stdio.h> #include<string.h> int main(void) { char a[10]; strcpy(a, "hello"); printf("%s", a); } | cs |
strncpy
세번째의 값만큼의 문자열의 오른쪽값을 왼쪽값에 복사합니다.
사용예 ↓
1 2 3 4 5 6 7 8 | #include<stdio.h> #include<string.h> int main(void) { char a[10]; strncpy(a, "hello", 3); printf("%s", a); } | cs |
strcat
오른쪽값을 왼쪽값에 붙입니다.
사용예 ↓
1 2 3 4 5 6 7 8 | #include<stdio.h> #include<string.h> int main(void) { char a[10] = "HI "; strcat(a, "hello"); printf("%s", a); //결과는 HI hello가 나옵니다. } | cs |
strncat
세번째값이 양만큼 두번째값을 첫번째값에 붙입니다.
사용예 ↓
1 2 3 4 5 6 7 8 | #include<stdio.h> #include<string.h> int main(void) { char a[10] = "HI "; strncat(a, "hello", 2); printf("%s", a); //결과는 HI he. } | cs |
strcmp
문자열을 비교합니다. 문자열이 같을때에는 0을반환하며
예:strcmp(a, b)
라고한다면 a가더큰경우 양수를 b가더큰경우 음수를 반환합니다.
사용예 ↓
1 2 3 4 5 6 7 8 9 10 11 12 13 | #include<stdio.h> #include<string.h> int main(void) { char a[10] = "HI"; char b[10] = "Hello"; if (strcmp(a,b)){ printf("a와b는다릅니다.\n"); } else { printf("모릅니다."); } } | cs |
strncmp
문자열을 비교하되, 세번째수만큼만 비교를합니다.
사용예↓
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include<stdio.h> #include<string.h> int main(void) { char a[10] = "HI"; char b[10] = "Hello"; if (strcmp(a,b)){ printf("a와b는다릅니다.\n"); } if(!strncmp(a, b, 1)){ printf("하지만 첫글자는 같습니다."); } else { printf("모릅니다."); } | cs |
※!연산자는 0을 1로 1을0으로 바꾸는 부정연산자입니다.
그럼여기까지 블로그포스팅을 마치도록 하겠습니다.
문자열관련 함수 -끝-