3

int 配列があり、その中の要素の数を見つける必要があります。sizeof と関係があることは知っていますが、正確な使用方法はわかりません。例

 int data2[]={a,b,c,d};
4

1 に答える 1

7

配列を使用すると、次のことができます。

int numElements = sizeof(data) / sizeof(data[0]);

ただし、これは配列でのみ機能し、配列を関数に渡した場合は機能しません。その時点で、配列はポインターに減衰するため、ポインターsizeofのサイズが返されます。

これがマクロにまとめられていることがわかります。

#define ARRAY_LENGTH(x) (sizeof (x) / sizeof (x)[0])
于 2012-09-28T20:18:22.123 に答える