• char 배열이름[크기] ="문자열";
#include <stdio.h>

int main()
{
    char s1[10] = "Hello";  // 크기가 10인 char형 배열을 선언하고 문자열 할당

    printf("%s\n", s1);     // Hello: %s로 문자열 출력

    return 0;
}

  • 배열을 미리 선언해 놓고 문자열 나중에 할당 하는 방법
#include <stdio.h>

int main()
{
    char s1[10];     // 크기가 10인 char형 배열 선언
    
    s1 = "Hello";    // 이미 선언된 배열에 문자열을 할당하면 컴파일 에러 발생

    printf("%s\n", s1);    // Hello: %s로 문자열 출력

    return 0;
}

이미 선언된 배열에는 문자열을 할당 할 수 없음. 정 할당하고 싶으면 

s1[0] = 'h';

s1[1] ='e';

이런식으로 하나 하나 집어 넣어야함.

 

 

  • 배열이 크기 할당 시 
char s1[6] = "Hello";    // 크기가 6인 배열. Hello 5글자에 NULL 하나를 더해 6개의 공간이 필요함

 

char[] 와 char* 의 차이점

char str[] = "abc";

char *str = "abc";

char* 는 읽기 전용 수정 불가

//수정 불가
int main()
{
    char *str = "abc";
    str[0] = 'b';
}

//수정 가능
int main()
{
    char str[] = "abc";

    str[0] = 'b';
}

 

'C++' 카테고리의 다른 글

Visual Studio 2015 - 자주 사용하는 단축키  (0) 2020.08.19
[C++] 포인터(Pointer)  (0) 2020.07.23
[C++] 스택과 힙  (0) 2020.07.23
[C++] 메모리누수 체크  (0) 2020.07.23
[C++] char[] 와 char*의 차이  (0) 2020.07.22

+ Recent posts