ft_calloc - chanhl22/libft GitHub Wiki
1 /* ************************************************************************** */
2 /* */
3 /* ::: :::::::: */
4 /* ft_calloc.c :+: :+: :+: */
5 /* +:+ +:+ +:+ */
6 /* By: chanhlee <[email protected].> +#+ +:+ +#+ */
7 /* +#+#+#+#+#+ +#+ */
8 /* Created: 2021/01/21 17:11:50 by chanhlee #+# #+# */
9 /* Updated: 2021/02/02 09:59:12 by chanhlee ### ########.fr */
10 /* */
11 /* ************************************************************************** */
12
13 #include "libft.h"
14
15 void *ft_calloc(size_t count, size_t size)
16 {
17 void *ptr; //ํฌ์ธํฐ ๋ณ์ ์ ์ธ (๋ฆฌํด๊ฐ์ด voidํ์ด๋ผ์ void๋ก ์ ์ธ)
18
19 if(!(ptr = (void*)malloc(size * count))) //๋์ ํ ๋น, sizeํฌ๊ธฐ์ ๋ณ์๋ฅผ count๊ฐ ์ ์ฅํ ์ ์๋ ๊ณต๊ฐ ํ ๋น,
ํ ๋น๋ ๋ฉ๋ชจ๋ฆฌ์ ์์์ ๋ํ ํฌ์ธํฐ๋ฅผ ๋ฐํํ๋ฉฐ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ถฉ๋ถํ์ง ์๋ ๊ฒฝ์ฐ์ ๋ฐํ๋๋ ๊ฐ์ NULL์ด๋ค.
20 return (NULL);
21 ft_bzero(ptr, size * count); //0์ผ๋ก ์ฑ์์ฃผ๋ bzeroํจ์ ์ฌ์ฉ, bzero๋ก ๋๊ธธ ๋ ๋จ์ ํ๋๋น byteํฌ๊ธฐ์ count ๋จ์ ๊ฐ์๋ฅผ ๊ณฑํด์ ๋๊ฒจ์ผํจ
22 return (ptr);
23 }