1. 먼저 한글은 한글자당 2byte를 할당 받음.
2. char *T = "안녕하세요\n"; , 포인트변수 T 를 할당하였고, T가 가지고있는 주소를 따라가서 그 안에 "안녕하세요\n" 를 넣어둠!
3. printf(T); , T의 주소를 찍어주었고, printf 는 심볼테이블에 적히는 자료형이 int( *)(const char *,...) 이므로
문자형 상수인 const char * 에 의해 T의 주소를 따라간다.
4. 그러므로 printf(T); 는 '12녕하세요' 가 출력 되었다.
5. 밑에 printf(0x0040B000); 로 컴파일을 하면 경고메세지가 뜬다. "안녕하세요\n" 가 문자형상수이므로 같은 자료형으로 맞춰 주어야 하기 때문이다. 그래서 앞에 캐스팅을 해줘서 자료형을 맞추면 경고메세지가 사라지고 '12녕하세요'
가 제대로 출력된다.
'C++프로그래밍' 카테고리의 다른 글
2013.04.01_배열 (0) | 2013.04.01 |
---|---|
2013.04.01_함수포인터응용편! (0) | 2013.04.01 |
[스크랩]인수/인자리스트 (0) | 2013.03.29 |
2013.03.28_함수의인수전달기법 (0) | 2013.03.28 |
2013.03.28_지역변수갯수맞추자! (0) | 2013.03.28 |