如何计算数组中的元素数?

Thu*_* Ra 0 c arrays

我创建了一个数组并将值放入数组中,如下所示

int *ptr_int;
int list_int[10];
int i;
for (i=0; i<10; i++)
    list_int[i] = i + 1;
Run Code Online (Sandbox Code Playgroud)

list_int像这样给数组赋值

list_int[17] = 18;
Run Code Online (Sandbox Code Playgroud)

当我试图得到数组的数量如下

int size = sizeof(list_int ) / sizeof( int );
printf( "The size of int is %d.\n", size);
Run Code Online (Sandbox Code Playgroud)

结果只是10.

我怎么能得到阵列室数?

cni*_*tar 6

结果只有10个.

这是真正的大小.分配给list_int[17]未定义的行为,并不会神奇地扩展数组.