다음과 같은 구문이 있습니다. 제 나름대로 생각하는 부분이 맞는지 설명좀 부탁드릴게요.
char buffer[512];
snprintf(buffer,512,"select * from table where type=0 limit 1");
printf("%s\n",buffer);
snprintf(buffer,512,"select * from table limit 1");
printf("%s\n",buffer);
두번째의 buffer뒤에는 어떤 쓰레기 값이 없이 "select * from table limit 1" 의 데이터가 그대로 들어가지던대
snprintf함수가 값을 할당하기전에 변수를 초기화 해주기때문인가요?
두번째로 드리는 질문은
함수가 끝나고나서 이 buffer 의 메모리를 해제 해주어야 하지 않나요?