개인노트

[C언어] 포인터와 문자열 본문

C/문법

[C언어] 포인터와 문자열

BillnairK 2017. 6. 30. 16:55

char str1[] = "billnairk";

- 변수 형태의 문자열


char *str2 = "billnairk";

- 상수 형태의 문자열


#include <stdio.h>


int main(void) {

char str1[] = "MS tistory"; // 변수 형태의 문자열

char * str2 = "KMS billnairk"; // 상수 형태의 문자열


printf("%s, %s \n", str1, str2);


str2 = "babo";

// str2[0] = "A"; 불가능

printf("%s, %s \n", str1, str2);


getchar();

}


다음 문장이 처리되는 과정 [ char *str2 = "billnairk"; ]

1. 문자열이 메모리 공간에 저장된다.

2. 메모리의 주소 값이 반환된다.

즉, 문자열이 0x1234번지에 저장되었다고 가정한다면

char *str2 = "billnairk"; == char *str2 = 0x1234; 라고 할 수 있다.

Comments