看聊天记录都学不会C语言?太菜了吧》(17)5分钟搞懂指针与多重指针

若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我,若你是真心学习可以送你书籍,指导你学习,给予你目标方向的学习路线,无套路,博客为证。

本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课程也将会逐步更新。

若有想学习的内容可以在评论区留言,根据大家的要求持续更新。点赞过十万就算化成灰我也更新下一篇。(肯定不到,也会更的。)

有问题也可以在评论区留言,也可以私聊我加我好友共同交流一起进步~

喜欢内容欢迎关注我、评论、点赞、收藏,这对我很重要,谢谢~


由于部分粉丝要求想要学python,就更了这个系列,我就算是生产队的驴、化成灰我C语言和python都一周6篇打底。可以关注我加我好友提你们想学的内容哟~

目录

《看聊天记录都学不会C语言?太菜了吧》(22)(必懂!题解 1-100 内素数)素数原来是质数!为什么你不早说!——(必懂!题解)求素数

《看聊天记录都学不会C语言?太菜了吧》(21)(必懂!题解冒泡排序)在现实生活中,打擂台比赛争名次竟用的是冒泡排序?——(必懂!题解)冒泡必懂

《看聊天记录都学不会C语言?太菜了吧》(20)(必懂!题解指定天数)我能知道2000年后的这个月一共有几天——(必懂!题解)我能知道2000年后的这个月一共有几天

《看聊天记录都学不会C语言?太菜了吧》(19)巩固开始,数字1、2、3、4能够组成多少个 3 位数的不同的排列——巩固1

《看聊天记录都学不会C语言?太菜了吧》(18)2分钟搞结构体——结构体

看聊天记录都学不会C语言?太菜了吧》(17)5分钟搞懂指针与多重指针——指针与多重指针

《看聊天记录都学不会C语言?太菜了吧》(16)我一直以为校花很漂亮,直到我叫了她一声…——生命空间、命名规则

《看聊天记录都学不会C语言?太菜了吧》(15)你学了一节课的函数我5分钟搞定了,还很熟——自定义函数传参、返回值

《看聊天记录都学不会C语言?太菜了吧》(14)这么神奇?我写了20行代码竟然一行就可以搞定?——自定义函数

《看聊天记录都学不会C语言?太菜了吧》(13)(9*9 乘法表)寻找电脑中的盲盒彩蛋——for 循环与循环嵌套 九九乘法表

《看聊天记录都学不会C语言?太菜了吧》(12)循环有多容易?你看一眼就怀…——循环

《看聊天记录都学不会C语言?太菜了吧》(11)2分钟领悟数组——数组

《看聊天记录都学不会C语言?太菜了吧》(10)程序媛聪明绝顶了——逻辑与运算符

《看聊天记录都学不会C语言?太菜了吧》(9)老公饼真的有老公送?——字符数组

《看聊天记录都学不会C语言?太菜了吧》(8)牛郎和织女竟有一个孩子?——多条件if

《看聊天记录都学不会C语言?太菜了吧(7)下一篇文章告诉你牛郎是谁——if逻辑判断

《看聊天记录都学不会C语言?太菜了吧(6)以前跟我说编程很难的给我站出来——浮点数及变量运算

《看聊天记录都学不会C语言?太菜了吧(5)打了一把游戏我学会了一个编程知识?——变量输出及占位符

《看聊天记录都学不会C语言?太菜了吧(4)原来我早就会编程了——变量

《看聊天记录都学不会C语言?太菜了吧(3)代码都在谈恋爱难道你不知道?——头文件及标点

《看聊天记录都学不会C语言?太菜了吧(2)我说编程很容易你们不服?——Devc使用及HelloWorld

《看聊天记录都学不会C语言?太菜了吧(1)我在大佬群里问基础问题没人理?——学习建议


我的其它教程

教程点击进去将会有目录

《看聊天记录都学不会Python到游戏实战?太菜了吧》(1)加载Python神器!亮剑!

《看聊天记录都学不会C#?太菜了吧》(1)从今天开始我是一个游戏开发者

你去约个会,你零基础的同学就学完C语言知识点过完了

【小白进】大佬们学习为什么简单?小白该如何学习?学历不高如何找工作?副业很好赚?了解后少走弯路


作者简介

作者名:1_bit

简介:CSDN博客专家,2020年博客之星TOP5,蓝桥签约作者。15-16年曾在网上直播,带领一批程序小白走上程序员之路。欢迎各位小白加我咨询我相关信息,迷茫的你会找到答案。

博客地址:https://i1bit.blog.csdn.net


🐰小C:小媛,这节课我介绍个外卖小哥给你认识怎么样?

👸小媛:哈?你想搞事?

🐰小C:我就是想给你介绍认识,我觉得你肯定很喜欢的。

👸小媛:你是不是想说他很帅?

🐰小C:帅不帅我不懂,主要是能干事。

👸小媛:唔…那行吧。

🐰小C:那现在打开电脑吧。

👸小媛:为啥要打开电脑?不是要介绍外卖小哥给我的吗?

🐰小C:我说的是C语言中的一个知识点呀,你在想什么。

👸小媛:…

🐰小C:我说的这个知识点叫做指针,可是有很大用处的哟。

👸小媛:指针?我听说很难,但是又很有用。

🐰小C:嗯,在这里我就告诉你基础用法,先学会怎么用就可以了。

👸小媛:所以你说的外卖小哥是他?

🐰小C:对呀,就是他呢。

👸小媛:我怎么觉得你在给我介绍一个工具人,然后告诉我怎么样去用这个工具人,让他开心我也开心。

🐰小C:哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈,你真是万事皆可拟人化。

👸小媛:不不不,是你开的头,不能怪我。

🐰小C:好了,我们开始回归正题吧。

👸小媛:我也不跟你闹了。

🐰小C:指针呢,其实你可以先当作他是一个跑腿的,你可以给他一个地址,然后让他帮你把内容存过去,是不是很像外卖小哥?

👸小媛:所以该怎么用呢?

🐰小C:你看下面的代码。

#include<stdio.h>
void main(){int *p;int a=10;p=&a;
}

👸小媛:我只能说我发现了多了个 * 号和一个 & 是我不会的。

🐰小C:这两个字符正是最开始学习指针的关键,代码 int *p; 就表示创建了一个整型指针,名字叫做 p,简单吧?

👸小媛:创建是挺简单的,然后呢,请继续往下讲。

🐰小C:之后创建了一个变量 a,里面存储的值是10,随后 p=&a中 &号表示什么?

👸小媛:我怎么知道?

🐰小C:你还记得最开始使用 scanf 的时候 & 是用来干啥的吗?

👸小媛:取地址?

🐰小C:是的,在这 p=&a 表示取到变量 a的地址赋值给指针,这个时候这个指针变量 p 就等于是你这个变量 a 的代理人了,如果你想对变量 a 操作直接使用 p 就可以。

👸小媛:你的意思是赋值和取值这两个操作?

🐰小C:是的,那你懂怎么写吗?

👸小媛:我感觉有坑,不过我得试试,是不是这样。

p=10;

🐰小C:哈哈哈,不是的,指针有另外的写法哟。

👸小媛:我就知道,你赶紧说吧。

🐰小C:你看下面的代码。

#include<stdio.h>
void main(){int *p;int a=10;p=&a;printf("a 变量存储的值是 %d \n",a);*p=20;printf("a 变量存储的值是 %d \n",a);
}

👸小媛:咦?你的意思是说,如果要操作指针变量 p 需要在前面加一个 * 号才能够间接对变量 a 进行操作?

🐰小C:是的,* 号叫做取值符号,使用 * 号就会操作指针 p 所指向的地址,因为我们在之前使用了 & 符号对变量 a 进行取地址,那么使用 * 号就会对这个变量地址的内容进行更改。

👸小媛:奥,我懂了,我运行了一下,果然值发生了改变。

🐰小C:指针的基本用法不难吧?

👸小媛:哈哈哈,基础用法挺好记的。

🐰小C:我想问你一个问题,你知道二手房东是指什么吗?

👸小媛:就是租房的时候,那个人不是房东,而是转租的。

🐰小C:对的呢,在指针里面也有二手跑腿的,叫做指向指针的指针。

👸小媛:什么鬼?

🐰小C:给你看一个示例。

#include<stdio.h>
void main(){int a=10;int *p,**p1;p=&a;p1=&p;printf("%d\n",**p1);
}

👸小媛:我感觉我脑子有点糊了。

🐰小C:哈哈哈,你看代码中 *p 就是正常的指针,**p1 就表示这是一个指向指针的指针。*p 是指向变量,而 **p1 就是表示指向指针。其实指针也是一个变量,他也有一个地址,**p1 就表示他讲会指向一个指针,而指向的那个指针则会指向一个变量,操作 **p1就等于操作那个最终指向的变量。

👸小媛:好像明白了,请继续说。

🐰小C:你可以看代码中,使用一个 * 号的指针 p 指向了一个变量 p=&a 随后使用两个 * 号的指针指向了一个指针 p,写作 p1=&p ,这个时候我们使用两个取地址符 **p1 显示取值的内容结果就是如下。

👸小媛:唔,明白了。

🐰小C:那我问你,如果我需要一个指针,指向一个指针,该指针又指向另外一个指针,那这个指针需要使用多少个 * 号?

👸小媛:哈哈哈,又增加一个吧?因为第一个指针用一个 *,第二个指针用两个 *,那么第三个指针不会是使用三个 *吧?

🐰小C:对的,你看看下面。

#include<stdio.h>
void main(){int a=10;int *p,**p1,***p2;p=&a;p1=&p;p2=&p1;printf("%d\n",***p2);
}

👸小媛:哈哈哈,其实就是无限套娃了,懂了,跟之前的都一样,只是多了个 * 号,结果都是对的。

🐰小C:是的,你先去自己练习一下吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/287257.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何保护你的linux操作系统

导读在现在这个世道中&#xff0c;Linux操作系统的安全是十分重要的。但是&#xff0c;你得知道怎么干。一个简单反恶意程序软件是远远不够的&#xff0c;你需要采取其它措施来协同工作。那么试试下面这些手段吧。 使用SELinuxSELinux是用来对Linux进行安全加固的&#xff0c;有…

Android之使用ACTION_USAGE_ACCESS_SETTINGS权限检测手机多少天没有未使用其它APP

1 需求 找出手机多少天没有使用的所有APP 2 思路 通过 ACTION_USAGE_ACCESS_SETTINGS权限得到多少天已经使用的APP的包名,然后获取手机所有用户APP,剩下的APP就是多少天没有使用的APP。 3 ACTION_USAGE_ACCESS_SETTINGS权限申请 1)在AndroidManifest.xml文件里面定义权限…

无人职守安装的设计与部署

无人职守安装的设计与部署 (2009-2-19) 安装前需要生成一个应答文件&#xff0c;此时需要一个光盘中的工具。首先&#xff0c;将WINDOWN2003光盘载入CD&#xff0c;---单击退出。接下来打开光盘&#xff0c; 选择SUPPORT—并打开&#xff0c; --TOOLS –并打开 -----…

【Pix4d精品教程】Pix4dmapper航测内业项目化数据处理完整流程(空三、生成点云、DOM和DSM)

Pix4dmapper是一款集全自动、快速、专业精度为一体的无人机数据和航空影像数据处理软件。无需专业知识,无需人工干预,即可将数千张影像快速制作成专业的、精确的二维地图和三维模型。 本文讲解采用Pix4dmapper摄影测量内业数据处理完整流程,主要步骤包括:新建项目、添加影像…

干掉RedisHelper,请这样用分布式缓存

前言我们在项目中使用Redis时通常是写一个单例模式的RedisHelper静态类&#xff0c;暴露一些常用的Get、Set等操作&#xff0c;在需要使用地方直接RedisHelper.StringGet(xx,xx)就可以了&#xff0c;这样虽然简单粗暴地满足我们对Redis的所有操作需要&#xff0c;但是这在Asp.N…

4个常用的awk统计命令

1、求和cat data|awk {sum$1} END {print "Sum ", sum}2、求平均cat data|awk {sum$1} END {print "Average ", sum/NR}3、求最大值cat data|awk BEGIN {max 0} {if ($1>max) max$1 fi} END {print "Max", max}4、求最小值&#xff08;min…

《看聊天记录都学不会C#?太菜了吧》(2)C#那么简单我为何之前还学C语言?

本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新。 若…

Android之java.lang.ClassCastException: *****cannot be cast to*******

1 问题 在写BaseMultiItemQuickAdapter适配器的时候&#xff0c;更具不同类型构建不同的实体对象&#xff0c;提示错误如下 2 原因 Overrideprotected void convert(BaseViewHolder helper, MultiItemEntity item) {switch (helper.getItemViewType()) {case AppCleanHead.app…

php函数的初步使用

通过调用函数&#xff0c;实现打印半金字塔、全金字塔、空心金字塔、菱形、空心菱形 调用例程 huaTuMain.php被调用函数 huaTu.php转载于:https://www.cnblogs.com/seaBiscuit0922/p/5613141.html

ORACLE 11G DATA GUARD主从切换

当oracle data guard中如主库出现当机时,需要将从库切换为主库,以下从实验环境模拟主从库切换操作:1.查看主从库角色192.168.88.120:192.168.88.119:2.将主库(88.120)切换为从库alter database commit to switchover to physical standby with sessionB shutdown;shutdown im…

【Pix4d精品教程】大疆精灵4A无人机航空摄影测量外业数据采集完整操作流程

本项目我们采用大疆精灵4A无人机进行航空摄影测量外业数据采集,主要内容包括:航摄准备、像控点布设、航线规划、飞行、数据传输等。 Pix4dmapper摄影测量内业数据处理、空三及4D产品生产部分,请参照文章:《Pix4dmapper摄影测量内业数据处理完整流程》 目录 一、航摄准备 …

oracle进程结构中完成更新,Oracle 进程结构

Oracle进程结构进程是动态创建的&#xff0c;完成任务后就消亡&#xff1b;而程序是静态的实体&#xff0c;程序是可以复制、编辑的。进程强调的是执行过程&#xff0c;而程序仅仅是指令的有序集合&#xff1b;进程在内存中&#xff0c;程序在外存中。ORACLE分为用户进程和ORAC…

国外设计师眼中的原型工具Mockplus

2019独角兽企业重金招聘Python工程师标准>>> 今天&#xff0c;我们评述一款新型设计工具&#xff0c;Mockplus&#xff0c;专为设计师而打造的创新性原型设计工具。Mockplus适合于各种应用软件的制作&#xff0c;无论是手机应用&#xff0c;网页应用&#xff0c;亦或…

《看聊天记录都学不会C#?太菜了吧》(1)从今天开始我是一个游戏开发者

本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新。 若…

Android之让EditText不被键盘挡住

1 问题 点击EditText的时候&#xff0c;键盘挡住了&#xff0c;不好输入内容 2 解决办法 在AndroidManifest.xml相应的activity里面添加 android:windowSoftInputMode"adjustPan|stateHidden"

如何定制.NET6.0的日志记录

在本章中&#xff0c;也就是整个系列的第一部分将介绍如何定制日志记录(系列内容查阅《玩转ASP.NET 6.0框架-序言》)。默认日志记录仅写入控制台或调试窗口&#xff0c;这在大多数情况下都很好&#xff0c;但有时需要写入到文件或数据库&#xff0c;或者&#xff0c;您可能希望…

FreeMarker标签介绍

转自&#xff1a;http://www.blogjava.net/kxbin/articles/366505.html FreeMarker标签使用 一、FreeMarker模板文件主要有4个部分组成 1、文本&#xff0c;直接输出的部分 2、注释&#xff0c;即<#--...-->格式不会输出 3、插值&#xff08;Interpolation&#xff09…

利用Erdas监督分类方法提取城镇用地信息完整实验操作步骤

打开erdas,分波段加载landsat TM 影像信息,并转成img图像格式文件。 1.打开erdas,点击viewer打开新窗口,点击打开图标,选择要加载的一个波段的tif图像,点击OK。 2.点击主窗口File——Save——Top Layer As…,在跳出的Save窗

linux命令 su和sudo,Linux中sudo和su的区别

介绍&#xff1a;主要对su和sudo的功能&#xff0c;区别以及使用进行介绍。两者之间的区别su用于用户之间的切换&#xff1b;sudo用于普通用户可以使用root权限来执行指定命令&#xff1b;命令介绍1. susu简介su用于用户之间的切换。但是前面的用户依然保持在登录状态。这种切换…

通过Xshell上传下载文件

2019独角兽企业重金招聘Python工程师标准>>> 1&#xff09;安装模块 yum install lrzsz 2&#xff09;使用命令 rz #上传文件到Linux sz hello.txt #从Linux下载文件hello.txt 转载于:https://my.oschina.net/u/2351685/blog/519941