我有一个无符号长长数字数组。我初始化了前 12 个元素。数组在整个程序运行时改变大小。如何找出数组的长度。
我不能使用 sizeof(array)/sizeof(unsigned long long) 因为在这种情况下它不能正常工作。
我尝试使用这个循环:
count = 0;
while ( array[count] ) count++;
return count;
这种方法的问题是它仍然返回错误的长度。
这是代码的基本概要。
unsigned long long *prime = (unsigned long long *)calloc(1000, sizeof(unsigned long long);
prime[0] = 3;
prime[1] = 5;
....
prime[11] = 41;
unsigned long long *ptrEmpty = &prime[12];
int sizeComp;
//User can change change the size of the array here to create a larger list of primes.//
for( i = 43, sizeComp = 12; sizeComp < length(prime); i += 2 ){
// Do stuff...
}
我怎样才能找到这个长度?