用指针访问二维数组
简介:文章目录前言用指针访问二位数组通过指针访问二维数组的不同形式==*a和a 是两个完全不同的概念:====为什么不能用
用指针访问二位数组
通过指针访问二维数组的不同形式
==*a和a 是两个完全不同的概念:==
==为什么不能用*p=a==
二维数组元素的访问的四种方式:
1、通过下标访问数组元素
2、通过数组首地址访问数组元素
3、通过指针访问数组元素(以一维数组的角度“看待”二维数组”)
4、通过指针访问数组(以二维数组的角度“看待”数组)
指向字符串的二维数组
实例:学生成绩
思考 (如果看不懂,请回退往前再看)
二维数组作为函数的参数
1、以一维数组的角度“看待”二维数组
2、以二维数组的角度“看待”一维数组
课后练习
答案
方法一:用二维数组的方式看待程序:
方法二: 用一维数组的方式看待程序:
前言如何理解二维数组?我们以二维的方式理解二维数组,他在存储时却是一维的。
用指针访问二位数组例:int a[3] [4] = {1,3,5,7,9,11,13,15,17,19,21,23};
a[0] [0] a[0] [1] a[0] [2] a[0] [3]a[1] [0] a[1] [1] a[1] [2] a[1] [3]
a[2] [0] a[2] [1] a[2] [2] a[2] [3]
我们想象的二维数组的存储方式:3行4列
a[0] [0]a[0] [1]
a[0] [2]
a[0] [3]
a[1] [0]
a[1] [1]
a[1] [2]
a[1] [3]
a[2] [0]
a[2] [1]
a[2] [2]
a[2] [3]
我们认为前四个是一个以a[0]为数组名的一位数组,共有四个int元素
中间四个是名为a[1]的一维数组
最后四个是名为a[2]的一维数组
通过指针访问二维数组的不同形式 *a和a 是两个完全不同的概念:a看待这个数组认为这个数组是一维数组,它自身加一会转向下一个一维数组即a+1
*a指向的是每个元素都是整数的一维数组所以就认为 *a+0 指向的就是整数,加一就是下一个整数
为什么不能用*p=a int x,*p; double y,*q; p=&x; q=&y; p=q;//是错的 //p是指向四个字节为存储单元的地址 //q是指向八个字节为存储单元的地址 //两者不可以等价 二维数组元素的访问的四种方式: 1、通过下标访问数组元素 int a[3][4]; for (int i=0; i<3; i++) for (int j=0; j<4; j++) a[i][j] = i+j; int a[3][4]; for (int i=0; i<3; i++) for (int j=0; j<4 ;j++) *(*(a+i)+j)=i+j; 2、通过数组首地址访问数组元素对于二维数组元素a[i] [j], “【】”实际上是变址运算符,即将元素a[i] [j]的存储地址转换为a[i] + j。
3、通过指针访问数组元素(以一维数组的角度“看待”二维数组”) int a[3][4]; int *p=&a[0][0]; for (int i=0; i<3; i++) for(int j=0; j<4; j++) *(p++) = i+j; //相当于*p=i+j;p++;声明:本文内容仅代表作者个人观点,与本站立场无关。如有内容侵犯您的合法权益,请及时与我们联系,我们将第一时间安排处理
- 米兰后卫佳夫谈伊布、更衣室和成长:与伊布踢球疯狂,大教堂是我的
米兰后卫佳夫近日接受了德国天空体育记者的采访,谈到了自己在米兰的生活、加盟前与马尔蒂尼和马萨拉的视频通...
体育新闻 2023-05-08 01:02:36 - 皇马成为首支达成百冠的西班牙俱乐部,历史冠军分布展现辉煌历程
在2023年5月7日的国王杯决赛中,皇马以2-1的比分击败了奥萨苏纳,成功捧起了这一项西班牙足球比赛中的冠军奖杯。...
体育新闻 2023-05-07 10:47:13 - 米兰前锋莱奥遭意大利媒体记者极具争议的言论:甚至让他断腿!莱奥
最近,一则关于意甲球员莱奥的争议言论引发了广泛关注。意大利媒体sportitalia的记者Michele Criscitiello在一档节目中,...
体育新闻 2023-04-28 00:03:14 - 布斯克茨将接受巴萨续约报价,薪水大幅减少适应财务公平竞争?
据报道,巴塞罗那队的中场球员布斯克茨打算接受巴萨提出的续约报价,以继续留在球队一个赛季,并有可能再加一...
体育新闻 2023-04-27 21:55:43 - FIFA23公布英超最佳前锋阵容名单,曼城球员入选最多
英超、FIFA23、最佳阵候选、前锋、阿尔米隆、马丁内利、格拉利什、哈兰德、哈弗茨、凯恩、马赫雷斯、努涅斯、拉...
体育新闻 2023-04-18 06:40:54 - 海外票务网站公布首轮G1部分场次平均票价,国王主场迎战勇士最高
NBA季后赛将在4月17日正式开始,各支球队和球迷们都在紧张备战和期待中。而海外票务网站也在今天公布了首轮G1部分...
体育新闻 2023-04-15 05:10:48 - 曼联与诺丁汉森林交手记录 5场比赛
两支球队也将在2022年12月28日凌晨4点进行2022赛季的英超联赛,第17轮比赛,目前两支球队的近期状况,曼联会略高一...
体育新闻 2023-03-24 21:31:22 - 大概3000的预算,买switch还是ps4?
如果你是学生党,优先建议switch。为什么?现在国内switch群体庞大,数千万的switch玩家基数,总有一款适合你。swit...
体育新闻 2022-12-23 21:00:36 - 队友变对手,同效力大巴黎的姆巴佩与梅西迎来巅峰对决 冠军决赛)
梅西和姆巴佩都效力于大巴黎俱乐部,这两支顶级的足球队员在足球联赛中属于队友,但梅西和姆巴佩隶属于不同的...
体育新闻 2022-12-19 08:36:45 - 你认为老子《道德经》的精髓是什么?你是如何评价这部作品的?
世间要有道!人类要守自然和谐之道!道,无,发万物生死在其中,老子仿之,修掉有的负担,仿道的生,也就是修...
体育新闻 2022-12-18 13:12:34