ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 문자열의 초기화, 변경에서 왜 컴파일 오류가 발생할까?
    프로그래밍/C 2020. 12. 31. 15:24

    흔히들 문자열을 초기화하기 위해 가장 쉬운 방법으로 

     

    char str[10] = "Hello";

    str = "World"; 를 생각할 것이다. 

     

    사실 이는 문법 적인 오류를 가지고 있다. 여기서 str = "World"; 는 "World"문자열을 배열에 저장하는 것이 아닌,

     

    배열을 가르키는 주소에 대입 하는 것이기 때문이다.

     

    그러면 올바는 초기화, 변경의 방법에는 무엇이 있을까?

     

    1. 문자 배열 원소에 원하는 문자 하나하나 대입한다.

     

    char str[10] = "Hello";

    str[0] = 'W';

    str[1] = 'o';

    str[2] = 'r';

    str[3] = 'l';

    str[4] = 'd';

    str[5] = '\n';

     

    하나 하나 대입하는것이 매우 불편 하지만 매우 확실한 방법이다.

     

    2. strcpy()라이브러리를 사용한다.

     

    char str[10] = "Hello";

    strcpy(str,"World");

     

    #include<stdio.h> 헤더 선언 필수!! 필자도 많이 사용하는 방식이다.

     

     

    '프로그래밍 > C' 카테고리의 다른 글

    포인터에 문자열을 초기화, 변경하기  (0) 2020.12.31
Designed by Tistory.