strcpy 를 사용할 때 그 변수의 사이즈에 대하여 정확히 인지를 하고 사용해야 한다. 자칫 잘못하면 엄한 메모리의 영역까지 엎어칠 수 있다. 다음의 예제는 a 라는 스트링 변수에 문자를 2 byte만 넣을 수 있는데 이것을 오버하여 무턱대고 strcpy 를 했을 때 그 뒤에 바로 따라오는 변수 b의 기존 값(12345)이 뭉개져 버리는 것을 보여주고 있다. #include #include #include typedef struct a { char a[3]; char b[10]; } a_t; main() { a_t a; strcpy( a.b, "12345" ); printf("b ptr=[%p] len=[%ld] size=[%ld] value=[%s]\n", a.b, strlen(a.b), sizeof..