C语言第33课:通过分析三道测试题,进一步加深对于指针与数组的理解( 四 )
首先(*q)++这个表达式表示指针变量p的值自增1(因为*q的值是指针变量p里面存储的值) , 但是对于这个表达式返回的是指针变量p自增之前的值 , 因为(++)在后面 。 这里有一点饶了 , 这就是指针较为难以把握的地方了 , 有时候写的稍有复杂了 , 就会比较绕了 。
接下来继续分析:(*(*q)++)这个表达式表示获取的是指针变量p自增之前所指向的那段内存 , 也就是arr[2
, 再然后对于整个表达式【 (*(*q)++)++ 】实际上就是相当于arr[2
++ , 所以此时数组arr[2
的值变成了31
在第14行arr[i
*=10这个表达式作用是将数组arr每个元素的值在原先的基础之上再乘以10 , 所以最终数组arr每个元素的值分别是:100、200、310、400、500
当指针处在一些较为复杂的运算中 , 或者是在一些复杂的表达式中的时候 , 确实会比较难以分析 , 因为指针本身就是一处难点 , 在复杂表达式中那就是“难上加难”了 。 但是如果一点一点去分析 , 将复杂的表达式拆成较为好分析的多个一小段的表达式 , 那分析起来就会变得较为容易了 。
推荐阅读
- |MT 正在让游戏本地化质量变得更差?
- 伊隆·马斯克|EDG夺冠翻译小姐姐火了!穿印花旗袍大秀中国美,三门语言切换超牛
- edg战队|EDG赛后美女翻译上热搜!精通4国语言为国争光,网红学霸颜值高!
- 原神|原神:五郎技能的功能性极强?估计通过他使岩队,彻底运转起来!
- 网游|最新网游文《无限副本的神级法师》《天赋是卡牌培育》《论地球如何通过星际测评》
- 上单|LOL:玩上单的是女生还是男生?通过四个细节,轻松辨别
- 盗号|碧蓝航线:通过投票活动看看哪位舰娘最冷门 厨力和强度低到冰点
- 传奇|美服传奇:克服了语言不通,还带着新手玩的风生水起!
- 王者荣耀|天赐自述成长经历,曾被骗到工厂,通过职业试训,如今创立俱乐部
- ag战队|三国杀:沙摩柯通过武器最多能摸多少牌?答15张的再思考一下