c语言初级指针详解,一级指针,二级指针。n级指针

2023-11-16

目录:

一:1级指针

1.1:内存的使用

1.2:c语言内存中数据的访问

1.3:一级指针的定义方式

1.4:通过指针访问数据。

二:二级指针

2.1二级指针的创建和访问

总结

一:1级指针

首先在对指针进行理解之前,我们要清楚下面这几个个概念:

1.1:内存的使用

和现实生活对空间的分别方式相似,给不同的地域不同的名称。例如,北京,上海等

而内存也是一块空间,所以对这块空间的不同位置进行不同的编号,用起来也会更加方便。

这些编号就是我们常说的地址了。

我们都知道 ,内存里最小的内存单元就是一个bit位 ,那多大的内存空间可以分配一块地址呢,在

c语言的标准中规定,给每个字节大小的空间(8个比特位)配置一个专门的地址。

1.2:c语言内存中数据的访问

在c语言中创建一个变量a,那么我们通常是用变量名来访问这个数据,但是也可以用地址来访问这个数据 。那么要怎么通过地址来访问数据呢?????

这里就需要指针了。

1.3:一级指针的定义方式

#include<stdio.h>
int main()
{
	//一级指针
	int a = 10;
	int* pa = &a;
	printf("%d\n", a);
	printf("%d\n", *pa);
	return 0;
}

    int a = 10;//定义一个整形变量,变量中存储的数据是10
    int* pa = &a;//* 代表pa是一个指针 最前面的int代表pa指向的变量类型是整形类型

1.4:通过指针访问数据。

*pa=1;//代表对pa中的数据(也就是刚才拿到的a的地址)进行解引用,来访问a中的数据。

总结:指针里只能存放地址,地址也只能放置在指针中,对一级指针进行解引用就能通过他里面的地址来访问原变量a中存储的数据

二:二级指针

通过前面的了解我们知道,指针变量里面放置的是地址,而只要是变量,那肯定就有它自己的地址  所以我们来看下面这个例子

2.1二级指针的创建和访问

**ppa也可以看成    *(*ppa) 首先*ppa表示对ppa中的数据进行解引用,就能访问pa中存储的数据 所以*ppa就想当于pa,而对pa进行解引用就能访问a了(在上面的例子我们可以看到这两钟形式打印出的数据一样)

所以 * *ppa 也就相当于  a 了

总结:

一级指针pa里存的是整形变量a的地址,二级指针ppa里存的是一级指针变量pa的地址。

以此类推n级指针的定义和访问方式相同。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c语言初级指针详解,一级指针,二级指针。n级指针 的相关文章

  • Mysql常用的三种数据库引擎比较

    点击上方蓝字 快速关注 ISAM ISAM是一个定义明确且历经时间考验的数据表格管理方法 它在设计之时就考虑到数据库被查询的次数要远大于更新的次数 因此 ISAM执行读取操作的速度很快 而且不占用大量的内存和存储资源 ISAM的两个主要不足
  • ReplicaSet和ReplicationController区别

    ReplicaSet是新一代的ReplicationController ReplicaSet的pod标签选择器的表达能力更强 例如ReplicaSet能同时匹配两种标签 env dev和env pro ReplicationControl

随机推荐

  • ajax请求二进制数据

    var url var xhr new XMLHttpRequest xhr open GET url true 也可以使用POST方式 根据接口 xhr responseType blob 返回类型blob 定义请求完成的处理函数 请求前
  • 使用不同的渲染

    11
  • ubuntu更新源报错--软件包管理器apt在验证密钥时使用了旧的方式

    目录 一 解决报错一 二 解决报错二 一 解决报错一 1 报错原信息 Key is stored in Legacy trusted gpg keyring etc apt trusted gpg see the DEPRECATION S
  • 如何编辑加密的PDF

    在不知道密码的情况下如何编辑打印pdf呢 1使用WPS打开加密的pdf 2点击打印 神奇的事情 明明没有打印权限 选择打印为PDF 3获得一个新的有权限的PDF
  • vue3项目(六)---detail

    1 详情页 页面准备和路由配置 点击新鲜好物里的商品后 会跳转到详情页 并且会携带参数过去 1 先准备静态页面 在views下新建一个Detail组件 2 配置路由 src router index js import Detail fro
  • Python入门学习(三)核心语法(1)

    3 1Python序列详解 索引和引片 3 1Python序列详解 索引和引片 3 1 1 索引 list1 1 2 3 4 元素值 1 2 3 4 正索引 0 1 2 3 负索引 4 3 2 1 print list的第一个元素是 lis
  • 第一章_RabbitMQ简介

    MQ是什么 MQ Message Quene 翻译为 消息队列 通过典型的 生产者和消费者模型 生产者不断向消息队列中生产消息 消费者不断的从队列中获取消息 因为消息的生产和消费都是异步的 而且只关心消息的发送和接收 没有业务逻辑的侵入 轻
  • 出现找不到msvcp140.dll无法继续执行代码要怎么解决?

    出现找不到msvcp140 dll无法继续执行代码要怎么解决 当你尝试在Windows系统上运行某些程序或游戏时 可能会遇到 找不到msvcp140 dll无法继续执行代码 的错误提示 这个错误通常表示你的系统缺少了msvcp140 dll
  • centos7密码破解

    centos7密码破解 首先准备一台centos7系统 密码知道不知道都可以 1 先打开centos 然后进入选择系统的那一栏 然后点击任意键停住 按住e进入单用户模式 已经进入单用户模式 2 在Linux16最后面加上 目录rd brea
  • python操作Neo4j进行同名实体合并

    python操作Neo4j进行同名实体合并 使用python操作neo4j 3 5 4版本 时 防止已有节点重复创建 使用NodeMatcher函数 from py2neo import Graph Node Relationship No
  • 华为OD机试-计算网络信号

    华为OD机试 计算网络信号 网络信号经过传递会逐层衰减 且遇到阻隔物无法直接穿透 在此情况下需要计算某个位置的网络信号值 注意 网络信号可以绕过阻隔物 array m n 的二维数组代表网格地图 array i j 0代表i行j列是空旷位置
  • LeNet5的深入解析

    论文 Gradient based learning applied to document recognition 参考 http blog csdn net strint article details 44163869 LeNet5
  • Docker 使用国内镜像仓库

    Docker 使用国内镜像仓库 1 问题描述 2 总结 1 问题描述 由于某些原因 导致Docker镜像在国内下载速度特别慢 所以为了沉浸式开发 最好切换为国内源 这里以163 的镜像仓库举例 首先修改 etc docker daemon
  • 抓取得物数据出现验证码的解析思路

    原创来自本人的公众号 阿嚏个技术 公众号文章地址 得物采集数据出现geetest验证码的解析方式 本文仅提供反爬技术的分析思路 勿做商业用途 如有侵权 请联系删除 之前写过一篇爬得物数据的文章 毒 得物 APP历史购买数据抓取 阅读数还是挺
  • thrust快速入门指南(并行算法库,类似C++的STL)

    thrust快速入门指南 文章目录 thrust快速入门指南 Introduction Prerequisites Simple Example Vectors Thrust Namespace Iterators and Static D
  • Django安装提示错误

    使用sudo pip install 的时候出现下面一段代码 The directory Users XX Library Caches pip or its parent directory is not owned by the cur
  • 【KBQA】医疗知识图谱的问答系统实现

    知识图谱的构建 1 1数据的收集 初探医疗知识图谱 这篇文章概述了医疗知识图谱的定义 特点和应用 以及构建医疗知识图谱的数据源和步骤 文章指出 目前医疗知识图谱构建的数据源可以分为三个部分 权威的医学文献 临床数据和互联网信息 医学知识图谱
  • 郑州大学远程教育计算机考题,2017年郑州大学远程教育计算机考题.doc

    一 单项选择题 30道小题 共60分 1 下面关于计算机病毒说法正确的是 2分 A 都具有破坏性 B 有些病毒无破坏性 C 都破坏EXE文件 D 不破坏数据 只破坏文件 2 Excel中的电子工作表具有 2分 A 一维结构 B 二维结构 C
  • SAP FICO 会计凭证打印开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

    开发说明书 输入屏幕 输出布局及样式 程序逻辑 输入表屏幕逻辑 查询表BKPF 根据条件 BKPF BUKRS 输入条件的公司代码 BKPF BUDAT 输入的过账日期 取值 SAP会计凭证号码 BKPF BELNR 公司代码 BKPF B
  • c语言初级指针详解,一级指针,二级指针。n级指针

    目录 一 1级指针 1 1 内存的使用 1 2 c语言内存中数据的访问 1 3 一级指针的定义方式 1 4 通过指针访问数据 二 二级指针 2 1二级指针的创建和访问 总结 一 1级指针 首先在对指针进行理解之前 我们要清楚下面这几个个概念