배열의 크기에 대한 기초적인 질문이요
루나
2023.04.01
int size(char ptr[])
{
return sizeof(ptr)/sizeof(char);
}
int main(void)
{
char arr[]=level;
printf(%d\n,sizeof(arr)/sizeof(char));
printf(%d,size(arr));
}
위 코드에서 main함수 내에서 arr의 크기를 널문자 포함해서 구하면 6으로 정상적으로 나오는데
arr을 size함수로 보내서 출력하면 4가 나옵니다.
단어를 바꾸면 main함수내에선 잘 되는데 size함수에선 계속해서 4가 반환되네요.
문제가 뭔지 좀 알려주세요.