我有一个int数组,我需要找到其中的元素数量。我知道它与sizeof有关,但我不确定如何使用它。示例
int data2[]={a,b,c,d};
答案 0 :(得分:7)
使用数组,您可以:
int numElements = sizeof(data) / sizeof(data[0]);
但是这仅适用于数组,如果你已经将数组传递给函数,则无法工作:此时数组会衰减为指针,因此sizeof
将返回指针的大小
你会看到这被包裹在一个宏中:
#define ARRAY_LENGTH(x) (sizeof (x) / sizeof (x)[0])