tzkr.net
当前位置:首页 >> 为什么C++中sizEoF(ArrAy)/sizEoF(ArrAy[0])没用 >>

为什么C++中sizEoF(ArrAy)/sizEoF(ArrAy[0])没用

不然你觉得是多少 C++字符串就老老实实用 std::string,何必折腾 char[]

size=sizeof(array)/sizeof(int); sizeof返回的值为占内存的大小,所以size的值应该为6.然后后面的for循环输出该数组中的所有元素

如果你是char数组,就sizeof(a)/sizeof(char);如果是int数组,就sizeof(a)/sizeof(int),诸如此类

在C/C++中,sizeof是操作符而不是函数,所以那对()不是必须的,在没有歧意时可以不写。sizeof操作符用来检测系统为跟在后面的变量、类型符分配了多少个字节。下面的代码可帮助理解: //#include "stdafx.h"//If the vc++6.0, with this line.#in...

sizeof(arr1),arr1是数组,arr1里面是int变量 占据4个字节,所以3个变量占据12个字节。 int *source ,source是一个指针,若是sizeof(source)之后你会发现是4 因为所有的指针都是大小为4 *source是指针所指向的元素,int类型 占据4个字节 所以...

int* a[3][4]; //这个二维数组布局是这样的 //[0] x, x, x, x //[1] x, x, x, x //[2] x, x, x, x //这是整个二维数组的大小 // 3*4*sizeof(int*) = 3*4*4 = 48 assert( sizeof(a)==48 ); //*a取的是二维数组的第1行的指针,每行有4个int*,则大...

你好 我来解答一下。 首先你下面两个说法是错误的。 1.数组名a只是数组第一个元素的地址 数组名a只是和数组第一个元素的地址的值相同而已, 两者类型是不一样的。比如说一个long b=10,和short c = 10。 2.为什么sizeof()根据数组第一个元素的地...

因为在C++中数组名其实是这个数组的指针,sizeof(name)表示该数组的大小,你应该也知道name[5]实际上是被作为一个元素看待的

p是一个指针,只是指向了字符串char[3]而已。所以sizeof(p)不是字符串占的空间也不是字符数组占的空间,而是一个字符型指针占的空间。所以sizeof(p)=4,在C/C++中一个指针占4个字节 我也琢磨了一下,并找了相关资料,真是找不到能求用指针p所指...

sizeof(指针) = 4; sizeof(指针数组) = 4 * 数级长度; 例: 定义:char *p[100]; 则:sizeof(p) = 400; 你提的问题不详细,如果答非所问,你可以再补充一下问题。

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com