[C] 문자열 비교 & 검색 (strcmp(), strncmp(), strstr(), strpbrk(), strspn(), strcspn())
// 문자열 비교 /* strcmp(dest, srt) 에서 dest==srt 면 0을 반환 destsrc면 양수값 반환 */ #include #include int main() { char s1[]="ABCD"; char s2[]="ABCD"; char s3[]="abcd"; char s4[]="abc"; printf("%d\n", strcmp(s1, s2)); // 문자열이 같으면 0을 반환한다. printf("%d\n", strcmp(s1, s3)); // 대소문자 가린다. 아스키 코드상 대문자가 소문자보다 10진수로 적다. // 따라서 음수값 반환 printf("%d\n", strcmp(s3, s4)); // s3가 s4보다 크다. 따라서 양수값 반환 printf("%d\n", strncmp(s3..
[C] 문자열 복사, 대체, 삽입 (strncpy(), mommove(), memcpy(), strcat(), strncat())
// 문자열 복사 #include #include int main() { char s1[]="abcdefgh"; // *s1 하면 에러 char s2[]="alphabetagama"; // *s2 해도 가능하다. strncpy(s1, s2, strlen(s1)); // s2 문자열을 s1에 복사한다. s1의 길이만큼 복사. printf("%s", s1); // 만약 s2가 s1에 복사할때 s2의 길이가 s1의 길이를 초과해서 // 복사하면 에러가 생긴다. return 0; } // 문자열 대체 memmove() or memcpy() 함수 #include #include int main() { char s1[]="abcdefg"; char s2[]="012"; memmove(s1+3, s2, strlen(..