◈ 이 글은 강의를 위하여 제가 직접 작성한 내용입니다. 따라서 퍼가실 경우, 출처를 명확히 해주시기 바랍니다!!
◈ This ariticle was written by me for teaching. So if you want to copy this article, please clarify the source!!
◈ This ariticle was written by me for teaching. So if you want to copy this article, please clarify the source!!
문자열을 포인터에 저장할 때와 배열에 저장할 때의 차이점을 이해하자.
#includeusing namespace std; void main() { // 포인터변수는 오로지 주소만 저장하므로 무조건 4byte이다. // 포인터변수는 문자열 저장을 위한 메모리 공간을 할당받지 못하므로 컴파일러가 대신하여 할당받아준다. char* a = "안녕하세요"; char* b = "안녕하세요"; // 배열은 문자열의 크기에 맞춰서 메모리 공간을 확보한다. char c[] = "MBC 아카데미"; char d[] = "MBC 아카데미"; cout << hex; cout << "0x" << (int)a << endl; cout << "0x" << (int)b << endl; cout << "0x" << (int)c << endl; cout << "0x" << (int)d << endl; if(a == b) cout << "a와 b는 같은 주소값을 가지고 있다." << endl; else cout << "a와 b는 다른 주소값을 가지고 있다." << endl; if(c == d) cout << "c와 d는 같은 주소값을 가지고 있다." << endl; else cout << "c와 d는 다른 주소값을 가지고 있다." << endl; }