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

广州通和通信建设有限公司网站深圳网站-建设信科网络

广州通和通信建设有限公司网站,深圳网站-建设信科网络,公司官方网站建设申请,seo顾问推推蛙目录 1. 数组名 2. 指针访问数组 3. 一维数组的传参#xff08;本质#xff09; 4. 冒泡排序 5. 二级指针 6. 指针数组#xff08;指针的数组#xff09; 7. 指针数组模拟二维数组 1. 数组名 在之前的代码中我们使用指针访问过数组的内容。 int arr[10] {1,2,3,4…目录 1. 数组名 2. 指针访问数组 3. 一维数组的传参本质 4. 冒泡排序 5. 二级指针 6. 指针数组指针的数组 7. 指针数组模拟二维数组 1. 数组名 在之前的代码中我们使用指针访问过数组的内容。 int arr[10] {1,2,3,4,5,6,7,8,9,10}; int *p arr[0];//通过爱如如[0]来拿到数组的第一个元素的地址数组名其实本来就是地址而且是数组首元素的地址。 #include stdio.h int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };printf(arr[0] %p\n, arr[0]);printf(arr %p\n, arr);return 0; }但是如果是下面的代码就不能这么理解。 总结 数组名一般情况下就是首元素第一个元素的地址但是有两个例外 1.  sizeof数组名sizeof中单独放数组名这里的数组名表示的是整个数组计算的是整个数组的大小单位为字节 2. 数组名这里的数组名表示的是整个数组取出的是整个数组的地址整个数组的地址和数组⾸元素的地址是有区别的 知道这些后我们来看一下下面的代码来充分理解一下。 arr[0] 和 arr 都是 ⾸元素的地址1就是跳过⼀个元素 arr是数组的地址1 操作是跳过整个数组的。 2. 指针访问数组 因为数组名在内存中是连续存放的数组名就是首元素的地址方便找到起始位置这样可以使用指针来访问数组 #include stdio.h int main() {int arr[10] { 0 };int i 0;int sz sizeof(arr) / sizeof(arr[0]);//输⼊int* p arr;//指针p指向arr数组的首元素的地址for (i 0; i sz; i){scanf(%d, p i);//scanf(%d, arr[i]);//也可以这样写//scnaf(%d, *(arri));}//输出for (i 0; i sz; i){printf(%d , *(p i));//printf(%d, arr[i]);//printf(%d, *(arri));}return 0; } //arr[i]*(arri) p[i]*(pi) 注数组元素的访问在编译器处理的时候也是转换成⾸元素的地址偏移量求出元素的地址然后解引⽤来访问的。 3. 一维数组的传参本质 我们之前都是在函数外部计算数组的元素个数那我们可以把函数传给⼀个函 数后函数内部求数组的元素个数吗 在数组传参的时候传递的是数组名也就是说本质上数组传参本质上传递的是数组首元素的地址。 总结⼀维数组传参形参的部分可以写成数组的形式也可以写成指针的形式。 4. 冒泡排序 冒泡排序的核心思想就是两两相邻的元素进行比较 #include stdio.h void bubble_sort(int arr[], int sz)//参数接收数组元素个数 {int i 0;for (i 0; i sz - 1; i){int j 0;for (j 0; j sz - i - 1; j){if (arr[j] arr[j 1]){int tmp arr[j];arr[j] arr[j 1];arr[j 1] tmp;}}} } int main() {int arr[] { 3,1,7,5,8,9,0,2,4,6 };int sz sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz);for (int i 0; i sz; i){printf(%d , arr[i]);}return 0; } 5. 二级指针 指针变量也是变量是变量就有地址那指针变量的地址存放在二级指针中。 对二级指针的运算 *ppa 通过对ppa中的地址进⾏解引⽤这样找到的是 pa *ppa 其实访问的就是 pa **ppa 先通过 *ppa 找到 pa ,然后对 pa 进⾏解引⽤操作 *pa 那找到的是 a 6. 指针数组指针的数组 这是整数数组和字符数组 我们可以知道指针数组就是每个元素都是用来存放指针地址的。 7. 指针数组模拟二维数组 #include stdio.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数组中int* parr[3] { arr1, arr2, arr3 };int i 0;int j 0;for (i 0; i 3; i){for (j 0; j 5; j){printf(%d , parr[i][j]);}printf(\n);}return 0; }parr[i]是访问parr数组的元素parr[i]找到的数组元素指向了整型⼀维数组parr[i][j]就是整型⼀维数组中的元素但是要注意模拟始终只是模拟实际上并完全是二维数组因为每一行都不是连续的。
http://www.dnsts.com.cn/news/230419.html

相关文章:

  • 2019年新电商法做网站怎样找外贸客户啊
  • 上海市安全建设监理协会网站南昌市新农村建设网站
  • 网站建设报价分析关闭网站需要多久
  • 网站生成手机端网站not found
  • 高仿卡西欧手表网站中国全面开放入境
  • 站长工具 站长之家个人如何建立免费网站
  • 做ktv的网站辽阳网站建设辽阳
  • 电商类网站开发费用广东东莞桥头1例新冠状
  • 给私人企业做网站推广江西住房和城乡建设信息网站
  • 网站框架是怎么做的国外网站设计版式欣赏
  • 徐州智能模板建站51模板网ppt
  • 十年专业网站建设在凡科网申请的网站设置网页访问密码
  • 设计素材网站免费大全最新专门做ppt会员网站
  • 吴中区两学一做网站WordPress怎么改文章颜色
  • 网站开发教育类wordpress授权插件
  • 平面设计coreldraw排名优化软件
  • 阿里巴巴国际站网页设计教程上海网站建设q479185700棒
  • 网站地图的制作网站设计用户体验
  • 网站怎么做公司北京seo顾问服务公司
  • 自己做的网站怎么设置文件下载环保网站建设的主题
  • 国内高清图片素材网站推荐山东省建设教育信息网站首页
  • 乌云网是个什么网站建筑建设网站
  • 网站架构设计师是做什么的手机网游传奇
  • 手机网站织梦模板网络推广服务外包
  • 大邯郸网站安徽企业网站制作
  • 创建了网站郑州关键词排名公司电话
  • 五莲建设监理有限公司网站做django后台网站
  • 个人备案域名可以做企业网站吗龙岩小程序设计
  • 大寺网站建设公司天津外贸网络推广
  • apple网站设计网站后台界面