当前位置: 首页 > news >正文

把别人的图片拿来做网站网站建设制作临沂网站建设选盛誉

把别人的图片拿来做网站,网站建设制作临沂网站建设选盛誉,黄石市网站建设,福州做网站制作一、数组名的理解 int arr[10]{1,2,3,4,5,6,7,8,9,10}; int *parr[0]; 这里使用 arr[0] 的⽅式拿到了数组第⼀个元素的地址#xff0c;但是其实数组名本来就是地址#xff0c;而且是数组首元素的地址。如下#xff1a; 我们发现数组名和数组⾸元素的地址打印出…一、数组名的理解 int arr[10]{1,2,3,4,5,6,7,8,9,10}; int *parr[0]; 这里使用  arr[0] 的⽅式拿到了数组第⼀个元素的地址但是其实数组名本来就是地址而且是数组首元素的地址。如下 我们发现数组名和数组⾸元素的地址打印出的结果⼀模⼀样数组名就是数组⾸元素(第⼀个元素)的地址。 数组名如果是数组首元素的地址那下⾯的代码怎么理解呢 #include stdio.h int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };printf(%d\n, sizeof(arr));return 0; } 输出的结果是40。 如果arr是数组⾸元素的地址那输出应该的应该是4/8才对。 其实数组名就是数组首元素(第⼀个元素)的地址是对的但是有两个例外 ①sizeof(数组名)sizeof中单独放数组名这里的数组名表示整个数组计算的是整个数组的大小单位是字节 ②数组名这里的数组名表示整个数组取出的是整个数组的地址整个数组的地址和数组首元素的地址是有区别的 除此之外任何地方使用数组名数组名都表示首元素的地址。 这里我们发现arr[0]和arr[0]1相差4个字节arr和arr1 相差4个字节是因为arr[0] 和 arr 都是首元素的地址1就是跳过一个元素。但是arr 和 arr1相差40个字节这就是因为arr是数组的地址1 操作是跳过整个数组的。 二、使用指针访问数组 数组在内存中是连续存放的 指针的加减运算方便我们获得每一个元素的地址 #includestdio.h int main() {int arr[10] { 0 };//使用指针来访问数组int sz sizeof(arr) / sizeof(arr[0]);//输入10个值int* p arr;int i 0;for (i 0; i sz; i){//输入scanf(%d, p i);//pi arr[i]}//输出10个值for (i 0; i sz; i){printf(%d , *(p i));}return 0; } 数组名arr是数组首元素的地址可以赋值给p数组名arr和p这里是等价的。 p[i]等价于*(pi)arr[i]等价于*(arri)数组元素在访问编译器处理的时候也是转换成首元素的地址 偏移量求出元素的地址然后解引用来访问。 1.数组就是数组是一块连续的空间数组的大小和数组元素类型都有关系 2.指针变量就是指针变量是一个变量4/8个字节 3.数组名是地址是首元素的地址 4.可以使用指针来访问数组 拓展  三、一维数组传参的本质 我们之前都是在函数外部计算数组的元素个数那我们可以把函数传给一个函数后函数内部求元素个数吗 我们发现在函数内部没有正确获得数组的元素个数。  这就要学习数组传参的本质了上篇文章写道数组名是数组⾸元素的地址那么在数组传参的时候传递的是数组名也就是说本质上数组传参本质上传递的是数组首元素的地址。 所以函数形参的部分理论上应该 使用指针变量来接收首元素的地址 。那么在函数内部我们写 sizeof(arr) 计算的是⼀个地址的大小单位字节而不是数组的大小单位字节。正是因为 函数的参数部分是本质是指针 所以在函数内部是没办法求的数组元素个数的。 1. 数组传参的本质是传递了数组首元素的地址所以形参访问的数组和实参的数组是同一个数组。 2.形参的数组是不会单独再创建数组空间的所以形参的数组是可以省略数组大小的。 结论一维数组传参形参的部分可以写成数组的形式也可以写成指针的形式。本质上是指针变量 。 四、二级指针  指针变量是变量是变量就有地址那指针变量的地址存放在哪里呢这就是二级指针。 int**就是二级指针 *pp通过对pp中的地址解引用这样找到的是p*pp其实访问的就是p **pp先通过*pp找到p然后对p进行解引用操作找到的就是a。 五、指针数组 整型数组是存放整型的数组字符数组是存放字符的数组那么指针数组是存放指针的数组。 指针数组的每个元素是地址又可以指向一块区域。 六、指针数组模拟二维数组 #includestdio.h int main() {int arr1[] { 1,2,3,4,5 };int arr2[] { 2,3,4,5,6 };int arr3[] { 3,4,5,6,7 };int* parr[3] { arr1,arr2,arr3 };//打印数组int i 1;for (i 0; i 3; i){int j 0;for (j 0; j 5; j){printf(%d , parr[i][j]);}printf(\n);}return 0; } 画图演示 *(arr1j)arr1[j] *(*(arri)j)arr[i][j] parr[i]是访问parr数组的元素parr[i]找到的数组元素指向了整型⼀维数组parr[i][j]就是整型⼀维数组中的元素。 上述的代码模拟出二维数组的效果实际上并非完全是二维数组因为每一行并非是连续的。
http://www.hkea.cn/news/14340882/

相关文章:

  • 校园网站cms怎么查到代码是哪个网站做的
  • 微网站建设哪家优惠百度贴吧网页版
  • 国际购物网站排名小商品网站建设
  • 做贸易的网站有哪些设计网站物理结构怎么做
  • 济南市住建厅官方网站wordpress 热门搜索
  • 网站编辑地方门户网站源码下载
  • 企业网站的建设目的包含什么专业外贸网站建设
  • 长春网上建设网站wordpress插件项目管理
  • 南山老品牌网站建设网站开发的经验技巧
  • wordpress格式南昌做网站优化的公司
  • 建设局是个好单位吗wordpress seo选项
  • 北京建设网站合同下载好素材网站
  • 哪家做网站比较好淘宝便宜的团购网站建设
  • 百度营销官网河北网站seo优化
  • 云南住房和城乡建设厅网站南阳微网站开发
  • ppt怎么做网站c 怎么做网站开发
  • 市桥做网站有网站源码去哪里做
  • 团队建设游戏网站什么是ui界面设计
  • 肥西县建设局官方网站商丘专业做网站公司
  • 免费推广网站58吉林建设厅网站首页
  • 黑龙江省住房和建设厅网站微信公众号功能开发
  • 企业网站软件下载交互设计主要做什么
  • iis配置wap网站tradekey外贸平台官网
  • 学生做网站教程安康建设网站
  • 删负面的网站选择seo网站排名优化
  • 网站备案 二级域名网站建设需要用到的技术
  • 不让在建设门户网站wordpress收录提高
  • 网站系统cms石狮app网站开发哪家好
  • 哈尔滨网站建设哪儿好薇网站链群怎么做
  • 做一个网站放网上要多少钱宁波软件开发公司排名