首页 > 其他分享 >C语言的指针图示

C语言的指针图示

时间:2023-08-18 11:55:44浏览次数:36  
标签:容器 图示 pp 0x02 C语言 地址 指针

所谓指针定义,可以认为一个指针位置有2个结构,第一个结构就是指针所指向的地址,第二个结构就是地址里的数据。
对赋值操作来说,指针变量在左边和右边不一样,在左边是取地址(也可以理解为容器),在右边的是取地址处的值(也就是容器里的东西)。

// 结合图示,这里的*ppp你觉得是修改哪个变量的值呢?
// 答案:修改的是pp地址处的值,也就是说 *pp 和 &p 要更改的地址是同一处(地址关系:*pp === &p === 0x02),也就是修改 0x02 地址处的值。
*pp = 54321;

// 结合图示,如果我们要取**pp的值。
// 这里实际就是把&p地址处的值给取出来了,因为他在右边的位置上。
int cpVal = **pp


// 口诀就是左值是取地址(容器),右值是取地址处的值。
// 其他的*p也就好理解了,这里就不解释了

标签:容器,图示,pp,0x02,C语言,地址,指针
From: https://www.cnblogs.com/XingXiaoMeng/p/17640110.html

相关文章

  • 笔记整理--C语言--失落的C语言结构体封装艺术 - 博客 - 伯乐在线——转载
    失落的C语言结构体封装艺术-博客-伯乐在线转载1.谁该阅读这篇文章本文是关于削减C语言程序内存占用空间的一项技术——为了减小内存大小而手工重新封装C结构体声明。你需要基本的C语言的基本知识来读懂本文。如果你要为内存有限制的嵌入式系统、或者操作系统内核写代码,那......
  • 笔记整理--C语言--数组指针和指针数组的区别 - hongcha_717 - 博客园——转载
    【转载】:原文http://www.cnblogs.com/hongcha717/archive/2010/10/24/1859780.html数组指针和指针数组的区别数组指针(也称行指针)定义int(*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个......
  • 笔记整理--C语言--linux下错误的捕获:errno和strerror的使用——转载
    linux下错误的捕获:errno和strerror的使用经常在调用linux系统api的时候会出现一些错误,比方说使用open()、write()、creat()之类的函数有些时候会返回-1,也就是调用失败,这个时候往往需要知道失败的原因。这个时候使用errno这个全局变量就相当有用了。在程序代码中包含#include<e......
  • C语言标准发展史
     c语言标准:随着C语言在多个领域的推广、应用,一些新的特性不断被各种编译器实现并添加进来。于是,建立一个新的“无歧义、与具体平台无关的C语言定义”成为越来越重要的事情。 作为软件行业中的老大哥级人物。C语言也有自己的标准,而且是国际标准。如果大家遵循同一个标......
  • C语言中的关键字概述
    C语言的关键字是指具有特定功能的单词。可以使用关键字来帮助我们完成不同的事情。C语言最常见的关键字有32个,根据关键字的作用,可分为以下四类:一、数据类型关键字(共计12个):(1)char:声明字符型变量或函数返回值类型;(2)void:声明函数无返回值或无参数,声明无类型指针;(3)int: 声明整型变量或函数......
  • 笔记整理--C语言--assert用法总结——转载
    assert用法总结assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include<assert.h>voidassert(intexpression);assert的作用是现计算表达式expression,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用abort来......
  • 笔记整理--C语言--高质量C编程指南—林锐——转载
    高质量C编程指南—林锐头文件的作用略作解释:通过头文件来调用库功能。在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的库即可。用户只需要按照头文件中的接口声明来调用库功能,而不必关心接口怎么实现的。编译器会从库中提取相应的代码。头文件能加强......
  • 笔记整理--C语言--sscanf()和sprintf()的用法总结——转载
    sscanf函数的高级用法sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者以固定字符串为输入源。函数原型:intsscanf(constchar*format[,argument]...);其中的format可以是一个或多个:{%[*][width][{h|l|I64|L}]type|''|'\t'|'\n'|非%符号},注:*亦可用......
  • 笔记整理--C语言--sizeof()用法汇总——转载
    sizeof()功能:计算数据空间的字节数与strlen()比较strlen()计算字符数组的字符数,以"\0"为结束判断,不计算为'\0'的数组元素。而sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示。指针与静态数组的sizeof操作指针均可看为变量类型的一种。所有指针变量......
  • 「学习笔记」指针的基础入门
    为啥会突然学这个呢?因为长链剖分优化DP的状态转移用到了指针数组,平时的STL使用中也经常碰到指针。So,就去学了一下,记录一下学习的笔记。我绝对不会告诉你另一个原因是因为最近做DP做累了想来写篇博文水水时间引入我们平时用scanf输入的时候,都会在变量名前加一个&,但是,字......