如何获取指针指向数组的大小 方法/步骤 1 用 _msize取内存计算的方法structDATA{intprice;charname[100];};voidfn(DATA*d){intn;n=_msize(d)/sizeof(DATA);//这里计算出d的数组长度为13cout<<n<<endl;}int_tmain(intargc,_TCHAR*argv[]){DATA*d;d=newDATA[13];fn(d);system("pause");}_msi...
另外我有一个char a[]={1,2,3},当我在外部的时候,我很容易可以通过,sizeof(a)/sizeof(a[0])来获取数组的长度,但是当我将该point传入x_array_map的时候,却无法获取到,sizeof(a),貌似变成了sizeof(&a)的值。也就是说, int main(void){ char arr [3]={1,2,3}; printf("%d\n",sizeof(arr...
如何从C中的指针获取数组的大小? 我已经分配了一个大小为 mystruct 的“数组”,如下所示: if (NULL == (p = calloc(sizeof(struct mystruct) * n,1))) { /* handle error */ } 后来,我只能访问 p ,不再有 n 。只有指针 p 有没有办法确定数组的长度? 我认为它必须是可能的,因为 free(p) 就...
void * x_array_map(void *func,char * arr){ //void (*funcP)(); //funcP=func; int len=sizeof(arr); printf("%d\n", len); // (*funcP)(); } 另外我有一个char a[]={1,2,3},当我在外部的时候,我很容易可以通过,sizeof(a)/sizeof(a[0])来获取数组的长度,但是当我将该point...
比如x_array_map 中 arr定义为一个指针,所以求得的是指针占用的大小,在主程序中定义为一个数组,...