Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
int 配列があり、その中の要素の数を見つける必要があります。sizeof と関係があることは知っていますが、正確な使用方法はわかりません。例
int data2[]={a,b,c,d};
配列を使用すると、次のことができます。
int numElements = sizeof(data) / sizeof(data[0]);
ただし、これは配列でのみ機能し、配列を関数に渡した場合は機能しません。その時点で、配列はポインターに減衰するため、ポインターsizeofのサイズが返されます。
sizeof
これがマクロにまとめられていることがわかります。
#define ARRAY_LENGTH(x) (sizeof (x) / sizeof (x)[0])