개발 Tools/C_개념
C Malloc 0으로 초기화 ( Calloc )
전컴반
2022. 10. 26. 13:23
반응형
Malloc으로 할당하면 초기화가 안된다.
아래와 같이 코드를 돌리면
char* input = (char*)malloc(sizeof(char) * INPUT_NUM);
for (int i = 0; i < INPUT_NUM; i++) printf("%d\n", input[i]);
이런 이상한 값이 들어간다.
0으로 초기화하기 위해서 Calloc을 실행하면 된다. 선언 방식이 조금 다르니 유의 바란다.
char* input = (char*)calloc(INPUT_NUM, sizeof(char));
for (int i = 0; i < INPUT_NUM; i++) printf("%d\n", input[i]);
반응형