조회 수 8015 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
1. 문자열 함수

        strcpy(3) : 문자열을 복사한다.
        strncpy(3) : 문자열의 일부를 복사한다.
        strcat(3) : 문자열을 결합한다.
        strncat(3) : 문자열의 일부를 결합한다.
        strlen(3) : 문자열의 길이를 알아본다.
        strcmp(3) : 두 문자열을 비교한다.
        strncmp(3) : 두 문자열의 일부분을 비교한다.
        strcasecmp(3) : 문자열의 대소문자를 가리지 않고 비교한다.
        strncasecmp(3) : 대소문자를 가리지 않고 문자열의 일부를 비교한다.
        strdup(3) : 문자열을 복사한다.
        strchr(3) : 문자열에서 해당되는 문자의 첫번째를 찾아낸다.
        strpbrk(3) : 문자열에서 해당되는 문자의 첫번째 문자의 포인터를 리턴한다.
        strrchr(3) : 문자열에서 마지막으로 매치되는 문자의 포인터를 리턴한다.
        strstr(3) : 문자열이 포함될 때 처음 위치의 문자를 리턴한다.
        strspn(3) : 문자열이 일치하는 곳까지 문자의 갯수를 리턴한다.
        strtok(3) : 문자열에서 토큰을 분리해낸다.


--------------------------------------------------------------------------------

2. 문자열 복사하기

        #include <string.h>
        
        strcpy
        char *strcpy(char *dst, const char *src);
        
        strncpy
        char *strncpy(char *dst, const char *src, size_t n);
        
        strdup
        char *strdup(const char *s1);


--------------------------------------------------------------------------------

3. 문자열 길이 알아보기

        strlen
        size_t strlen(const char *s);


--------------------------------------------------------------------------------

4. 문자열 비교하기

        strcmp
        int strcmp(const char *s1, const char *s2);
        
        strncmp
        int strncmp(const char *s1, const char *s2, size_t n);
        
        
        strcasecmp
        int strcasecmp(const char *s1, const char *s2);
         
        strncasecmp
        int strncasecmp(const char *s1, const char *s2, int n);

        다음 프로그램 string.c는 스트링에 관련된 전반적인 사용법을 익히는 프로그램이다. 
        
        예: string.c
        #include <stdio.h>
        #include <stdlib.h>
        #include <string.h>
        
        main()
        {
                char * string1 = "hello";
                char * string2 = "world";
                char * string3;
                
                /** malloc을 이용해서 string3을 위한 공간을 잡아둔다. **/
                string3 = (char *)malloc(sizeof(char)*255);  
                
                /** string1의 문자열을 string3의 문자열에 결합시킨다. **/
                strcat(string3, string1);
                /** string2의 문자열을 string3의 문자열에 결합시킨다. **/
                strcat(string3, string2);
                printf("string1 + string2: %s :: length: %dn", string3, strlen(string3));
                
                /** strcpy를 이용해 string1의 문자열을 string3에 복사한다. **/
                strcpy(string3, string1);
                printf("string copy from string1 to string3: %sn", string3);
                
                /** strdup을 이용해 string1의 문자열을 string3에 복사한다. **/
                string3 = strdup(string2);
                printf("string copy from string2 to string3: %sn", string3);
                
                /** strcmp를 이용해서 두 문자열을 비교한다. 
                리턴 값이 0이면 두 문자열이 같다. **/
                if(strcmp(string1, string3) !=0) 
                        printf("string1 and string3 are differnetn");
                else
                        printf("string1 and string3 are samen");
        }


--------------------------------------------------------------------------------

5. 문자열에서 원하는 내용의 일부분 찾기

        strchr
        char *strchr(const char *s, int c);
        
        strrchr
        char *strrchr(const char *s, int c);
        
        strpbrk
        char *strpbrk(const char *s1, const char *s2);
        
        strstr
        char *strstr(const char *s1, const char *s2);
        
        strspn
        size_t strspn(const char *s1, const char *s2);


--------------------------------------------------------------------------------

6. 문자열에서 토큰 얻기

        strtok
        char *strtok(char *s1, const char *s2);

        다음 프로그램은 문장에서 원하는 토큰을 찾는 방법을 알려주는 프로그램이다. 
        
        예: strtok.c
        
        #include <stdio.h>
        #include <string.h>
        
        main()
        {
                char *p, buf[]="Hello world";
                
                /** buf로 부터 문자열을 읽어와 토큰을 분리한다. 토큰 분리자는 스페이스이다. **/
                p = strtok(buf, " ");
                
                /** 분리된 토큰을 출력한다. **/
                printf("p = %sn", p);
                
                /** 토큰을 계속해서 얻기위해서는 출처를 NULL로 해야한다. **/
                p = strtok(NULL, " ");
                printf("p = %sn", p);
                p = strtok(NULL, " ");
                if(p != NULL)
                        printf("p = %sn", p);
        }

        다음 프로그램은 토큰 분리자가 단순한 스페이스가 아니라 다양한 분리자를 허용하는 프로그램이다.
        
        예: strtok2.c
        #include <stdio.h>
        #include <string.h>
        
        main()
        {
                char *p, buf[100];
                char *re;
                
                re = gets(buf);
                
                /** 토큰 분리자를 스페이스,탭,.,:,*,&,^,%,$,#,@,!,(,)로 설정한다. **/
                p = strtok(buf, " t,.:*&^%$#@!()");
                
                while(p != NULL) {
                        printf("p = %sn", p);
                        p = strtok(NULL, " t,.:*&^%$#@!()");
                }
        } 

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
409 Develop [ios] Background 에서 네트워크 사용 file hooni 2013.07.22 11598
408 Develop [ios] App States file hooni 2013.07.22 13254
407 Develop [ios] APNS에 사용할 인증서 만들기 (KeyChain에 있는 인증서 Export) file hooni 2015.01.03 992
406 Develop [ios] APNS, Remote Push 수신 시점에서 앱의 3가지 실행 상태 hooni 2018.10.19 1095
405 Develop [ios] APNS, Remote Push 사용자가 수신을 동의했는지 확인하기 hooni 2018.10.19 1372
404 Develop [ios] APNS 클라이언트 구현 (pdf) file hooni 2013.06.27 15835
403 Develop [ios] APNS 샘플 코드.. secret hooni 2013.06.27 0
402 Develop [ios] AES256 알고리즘을 이용해 데이터 암호화/복호화 방법 file hooni 2015.07.21 4192
401 Develop [ios] @property의 속성 (strong, weak, copy) 사용 경우 hooni 2014.08.08 1777
400 Develop [ios] UIView 계층구조 hooni 2015.01.03 1226
399 Develop [html] 캐쉬된 웹페이지 사용하지 않도록 하는 방법 hooni 2003.04.23 13070
398 Develop [html] 메타태그 사용예.. 은지나 바라~ hooni 2003.04.23 7255
397 Develop [html] SVG(Scalable Vector Graphics) 간단 정리 hooni 2014.02.13 8869
396 Develop [html] HTML5 튜토리얼 링크 ㅋㅋ hooni 2013.04.23 12826
395 Develop [git] 쉬운 버전관리 Git 설명 hooni 2015.08.18 963
394 Develop [erp] SAP 모듈 요약 hooni 2013.04.23 15328
Board Pagination Prev 1 ... 26 27 28 29 30 ... 53 Next
/ 53