|
fbpsok 님이 쓰신 글 :
: char *s;
: s = new char;
: strcpy(s,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
: ShowMessage(s);
: -----------------------------------------------
: char *s;
: s = new char[300];
: strcpy(s,"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
: ShowMessage(s);
:
: 위에처럼하면 메세지가 다 안나오고 밑에처럼 하면 다나오는데 왜 그렇죠???
:
위에경우 char s와 같은 크기이고
아래는 [300]만큼이겠지요..
그래서 위에는 1바이트..
밑에는 300바이트만큼 넣을수(?)있겠지요/..
그래서 동적할당하실때.. 대충 아래처럼하실려면.. new char[300]이라고 하셔야겠지요..
그리고 혹시 이질문일지도 모르겠는데..
char *s - 모든포인터는 4바이트를 가지고 있다고 알고있습니다.
|