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

贵州建设厅网站办事大厅手机软件app制作工具

贵州建设厅网站办事大厅,手机软件app制作工具,wordpress 前端模板,自己做个购物网站文章目录 前言一、数组名的理解二、使用指针访问数组三、一维数组传参本质四、二级指针五、指针数组六、指针数组模拟二维数组 前言 不把指针学的扎实#xff0c;可不敢说自己C语言基础学的好 一、数组名的理解 #include stdio.h int main() {int arr[10] { 1,2,3,4… 文章目录 前言一、数组名的理解二、使用指针访问数组三、一维数组传参本质四、二级指针五、指针数组六、指针数组模拟二维数组 前言 不把指针学的扎实可不敢说自己C语言基础学的好 一、数组名的理解 #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; }输出结果 所以数组名就是数组第一个元素的地址 数组名就是数组⾸元素(第⼀个元素)的地址是对的但是有两个例外 • sizeof(数组名)sizeof中单独放数组名这⾥的数组名表⽰整个数组计算的是整个数组的⼤⼩ 单位是字节 • 数组名这⾥的数组名表⽰整个数组取出的是整个数组的地址整个数组的地址和数组⾸元素的地址是有区别的 除此之外任何地⽅使⽤数组名数组名都表⽰⾸元素的地址。 #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[0]1 %p\n, arr[0] 1);printf(arr %p\n, arr);printf(arr1 %p\n, arr 1);printf(arr %p\n, arr);printf(arr1 %p\n, arr 1);return 0; }输出结果 arr[0] 0077F820 arr[0]1 0077F824 arr 0077F820 arr1 0077F824 arr 0077F820 arr1 0077F848这⾥我们发现arr[0]和arr[0]1相差4个字节arr和arr1 相差4个字节是因为arr[0] 和 arr 都是 ⾸元素的地址1就是跳过⼀个元素。 但是arr 和 arr1相差40个字节这就是因为arr是数组的地址1 操作是跳过整个数组的。 二、使用指针访问数组 #includestdio.hint main() {int arr[10] { 0 };int sz sizeof(arr) / sizeof(arr[0]);int* p arr;int i 0;for (i 0; i sz; i) {scanf(%d, p i);//也可以写成scanf(%d,arri);}for (i 0; i sz; i) {printf(%d , *(p i));}return 0; }本质上p[i] 是等价于 *(pi)arr[i] 应该等价于 *(arri) 三、一维数组传参本质 之前我们都是在函数外部求数组的个数那如果在函数内部呢 数组名是数组⾸元素的地址那么在数组传参的时候传递的是数组名也就是说本质上数组传参传递的是数组⾸元素的地址。 所以函数形参的部分理论上应该使⽤指针变量来接收⾸元素的地址。那么在函数内部我们写 sizeof(arr) 计算的是⼀个地址的⼤⼩单位字节⽽不是数组的⼤⼩单位字节。正是因为函 数的参数部分是本质是指针所以在函数内部是没办法求的数组元素个数的。 #includestdio.hvoid test(int arr[]) {printf(%d\n, sizeof(arr)); }void test(int* arr) {printf(%d, sizeof(arr)); }int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,0 };test(arr);return 0; }⼀维数组传参形参的部分可以写成数组的形式也可以写成指针的形式。 四、二级指针 是变量都有地址 那么指针变量也是变量它的地址在哪呢 存放在二级指针中 *ppa 通过对ppa中的地址进⾏解引⽤这样找到的是 pa *ppa 其实访问的就是 pa int b 20; *ppa b;//等价于 pa b;**ppa 先通过 *ppa 找到 pa ,然后对 pa 进⾏解引⽤操作 *pa 那找到的是 a . **ppa 30; //等价于*pa 30; //等价于a 30;五、指针数组 指针数组是一个数组数组里面每一个元素的类型都是指针类型 数组指针的每个元素是地址⼜可以指向⼀块区域。 六、指针数组模拟二维数组 #includestdio.hint main() {int arr1[5] { 1,2,3,4,5 };int arr2[5] { 2,3,4,5,6 };int arr3[5] { 3,4,5,6,7 };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(%d, *(*(parr i) j));//parr[i][j] *(*(parr i) j);}printf(\n);}return 0; }parr[i]是访问parr数组的元素parr[i]找到的数组元素指向了整型⼀维数组parr[i][j]就是整型⼀维数组中的元素。 上述的代码模拟出⼆维数组的效果实际上并⾮完全是⼆维数组因为每⼀⾏并⾮是连续的。
http://www.tj-hxxt.cn/news/140328.html

相关文章:

  • 包头市建设厅官方网站园林景观设计公司成都
  • 做网站网站犯法吗具权威的小企业网站建设
  • 平台型网站建设个人接广告的平台
  • 做电脑网站用什么软件好用网站做竞价经常会被攻击吗
  • 贵阳市建设厅官方网站域名解析错误无法上网
  • 网站快速备案安全yoast wordpress seo plugin
  • 重庆网站建站价格网站超级链接怎么做
  • 100元网站建设可不可以用帝国cms做企业网站
  • 网站整体设计风格wordpress 8小时前
  • 廊坊网站建设制作最好旅游网站建设
  • 关于公司网站建设的申请一个人做网站设计兼职
  • 容桂网站制作效率好外贸黄页网站
  • 医院行业的网站是很难做吗wordpress多媒体上传
  • 网站制作的报价大约是多少怎么弄一个自己的网址
  • 做网站图片用什么格式最好wordpress apply filters
  • 深圳哪个招聘网站好天津哪家做网站好
  • 用文本文件做网站t想学网站建设
  • 河南英文网站建设公司四川成都哪里好玩
  • 怎么编写网站美轮美奂的网站建设
  • 一级a做爰片不卡免费网站广东网站建设报价如何
  • 黑糖不苦还做网站么网站的后台怎么做
  • 织梦 音乐网站网站页面禁止访问
  • 百度宣传做网站多少钱做网站卖大闸蟹
  • 甘肃省建设厅执业资格注册中心网站手机怎么查看网站代码实现的
  • 做网站建设的合同范本企业网站后台模板
  • 什么网站可以做外贸网页设计网站建设
  • 知名的建站公司免费网站外链推广
  • 做网站协议怎么签成都建工路桥建设有限公司网站
  • 重庆市工程建设招投标交易中心网站制作网站可用性监控
  • 杭州的服装网站建设mysql导入wordpress