다음 프로그램을 실행할 때 배열 크기가 달라집니다. 나는 여러 가지 방법으로 지쳤지 만 그 결과는 똑같습니다. 무엇이 잘못 될 수 있습니까?다른 배열 크기
#include<stdio.h>
void array_size(char *a[])
{
printf("Func Array Size: %d\n", sizeof(a));
}
int main()
{
char *str_array[]={"one", "two", "three"};
printf("Array Size: %d\n", (int)sizeof(str_array));
array_size(str_array);
return 0;
}
sizeof (a)는 포인터 크기입니다. 배열 크기가 아님 – BLUEPIXY
C99에서'% zu "를 사용하여'size_t' 값을 정확하게 출력 할 수 있습니다. – effeffe