c에서 malloc 리턴할때요

hello4miffy의 이미지
int* dec2bin(int y){ int arr = (int)malloc(sizeof(int)*5); int i; for (i=0; i<5; i++) arr[i]=0; return arr; }

dec2bin 함수의 일부인데요
arr0부터 arr4까지 0으로 모두 초기화한다음에 arr을 리턴했습니다.
하지만 결과는 1070192가 나와요. 왜 00000이 리턴되지 않나요??

twinwings의 이미지

- Type Error(Type casting)
- Unused argument

int* dec2bin()
{
    const int ARR_SIZ = 5;
    int *arr = (int*)malloc(sizeof(int)*ARR_SIZ);
    int i;
    for (i=0; i<ARR_SIZ; i++)
        arr[i]=0;
    return arr;
} 
aroma0403의 이미지

리턴한 arr은 포인터네요. 주소값