[C 언어] 문자열 만들기

    문자열 사용하기

     

     

    문자열 사용하기 코드

    #include<stdio.h>
    #include<string.h>
    
    void main()
    {
    	char name[] = "Superman";
    
    	char name2[20] = { 's','u','p','e','r' };
    	char name3[20];
    
    	int cmp;
    
    	name3[0] = 's';
    	name3[1] = 'u';
    	name3[2] = 'p';
    	name3[3] = 'e';
    	name3[4] = 'r';
    	name3[5] = '\0';
    
    
    	//byte 크기를 알려준다.
    	//문자열의 끝엔 항상 null이 들어간다.
    	//그러므로 8글자이면서 byte 크기가 9가 나온다.
    	printf("name size = %d\n", sizeof(name));
    
    	printf("name2 size = %d\n", sizeof(name2));
    	printf("name3 size = %d\n", sizeof(name3));
    
    	printf("%s\t%s\t%s\n", name, name2, name3);
    
    	//실제 문자열의 길이를 리턴 그러므로 null을 제외한다.
    	printf("name len = %d\n", strlen(name));
    	printf("name2 len = %d\n", strlen(name2));
    
    
    	//name2 = name; //error 주소를 담고 있으므로 이 방식은 잘 못 되었다.
    
    	//복사 하는 방법
    	strcpy(name2, name);	//복사 하는 방법
    
    	printf("%s\n%s\n", name, name2);
    
    	//문자열 비교 함수
    	//0 나올 경우는 같다. 0이 아니면 다르다.
    	cmp = strcmp(name2, name);
    
    	//결과는 0이 나온다.
    	printf("%d\n", cmp);
    
    	//name2의 값을 바꾼다.
    	strcpy(name2, "batman");
    	cmp = strcmp(name2, name);
    
    	//결과는 1이 나온다.
    	printf("%d\n", cmp);
    
    
    	//문자열 결합함수
    	strcat(name2, name);
    
    	//문자열 결합할 때 오버플로우를 조심해야 한다.
    	//visual Studio는 자동으로 크기를 조절해주지만, 다른 틀에서 제공 안 할 수도 있다.
    	printf("%s\n%s\n", name, name2);
    
    
    	
    }

     

    반응형

    댓글

    Designed by JB FACTORY