본문 바로가기
개발 Tools/C_개념

C Malloc 0으로 초기화 ( Calloc )

by 전컴반 2022. 10. 26.
반응형

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]);

 

반응형

댓글