division 'sizeof (int *) / sizeof (int)' does not compute the number of arra
时间: 2024-04-14 21:28:45 浏览: 252
解决不用sizeof求出int大小的方法
您提到的代码中,"sizeof (int *) / sizeof (int)" 这个表达式无法计算数组的元素个数。这是因为 sizeof 操作符在运行时返回的是类型或对象的大小(以字节为单位),而不是数组的元素个数。
要计算数组的元素个数,您可以使用另一种方法,即将数组的总大小除以单个元素的大小。例如,如果您有一个整型数组 arr,可以使用以下方式计算元素个数:
int size = sizeof(arr) / sizeof(arr[0]);
这里将 arr 的总大小除以 arr[0] 的大小,得到的结果就是数组的元素个数。
请注意,这种方法只适用于静态数组,对于指向动态分配内存的指针数组或动态数组,无法通过 sizeof 来计算元素个数。
阅读全文