|
아래 코드는 위험한 코드입니다.
그건 메모리를 더 크게 변경하는 것이 아니고..
정해진 영역을 초과해서 사용하는 것입니다.
따라서 초과한 부분에 다른 데이터가 있을 경우 위에 덮어 쓰기를 하기 때문에 문제가
발생할수 있습니다.
C/C++에선 이런 경우를 방지하는 것은 프로그래머의 책임입니다.
즉, buf의 사이즈를 더 늘려서 지정해 주어야 합니다.
홍용혁 님이 쓰신 글 :
: strcat 함수 다들 아시져
:
: 예를 들어
: char buf[3]="12";
: strcat(buf,"345");
: printf("%s\n",buf);
:
: 결과
: 12345
:
: 이렇게 나오죠
:
: 근데 처음 3 바이트로 잡혀있는 메모리를 어떻게
: 더 크게 변경할수 있는지가 궁금하네요
: 아시는 분은 갈켜주세여
|