第四章。指针表达式。

C语言提高之——指针表达式 在理解指针表达式之前先有一个概念就是“左值”和“右值”,对于左值就是可以出现在赋值符号左边的东西,右值就是那些可以出现在赋值符号右边的东西。进一步抽象可以这样理解:左值应该可以作为一个地址空间用来存放一个值,而右值可以作为一个值来处理,当然需要说明的是有些是既可以作为左值也可以作为右值的,例如:定义a为一个指针指向b,那么*a既可以作为一个右值即地址b中存放的数据,也可以作为一个左值即表示b的地址 阅读详情
第四章。指针表达式。
一个表达式的最后结果如果是一个指针,那么这个表达式就叫指针表达式。
下面是一些指针表达式的例子:
例六:
int a,b;
int array[10];
int *pa;
pa=&a//&a是一个指针表达式。
int **ptr=&pa//&pa也是一个指针表达式。
*ptr=&b//*ptr和&b都是指针表达式。
pa=array;
pa++;//这也是指针表达式。
 
例七:
char *arr[20];
char **parr=arr;//如果把arr看作指针的话,arr也是指针表达式
char *str; 
str=*parr;//*parr是指针表达式
str=*(parr+1);//*(parr+1)是指针表达式
str=*(parr+2);//*(parr+2)是指针表达式
由于指针表达式的结果是一个指针,所以指针表达式也具有指针所具有的四个要素:指针的类型,指针所指向的类型,指针指向的内存区,指针自身占据的内存。
 
好了,当一个指针表达式的结果指针已经明确地具有了指针自身占据的内存的话,这个指针表达式就是一个左值,否则就不是一个左值。
 
在例七中,&a不是一个左值,因为它还没有占据明确的内存。*ptr是一个左值,因为*ptr这个指针已经占据了内存,其实*ptr就是指针pa,既然pa已经在内存中有了自己的位置,那么*ptr当然也有了自己的位置。
《C和指针》---- 第二弹(当前可食用字数:5000)----读书笔记硬核分享系列 阅读详情

相关推荐

C语言-----知识点总结

虽然结构体变量名也可以作为函数的参数,将整个结构体变量进行传递,但一般不这样做,因为如果结构体的成员很多,或者有些成员是数组,则程序运行期间,将全部成员一个一个的传递,既浪费时间,又浪费空间,开销太大。最常见的表达式语句是赋值语句。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。

m0_38073539的博客 1505

指针的介绍、表达式分析、应用

表达式解析

weixin_42482333的博客 1166

指针表达式详解(适于指针的初学者)

想学C语言吗,指针是必过的一关,指针学不好,C语言等于白学。学指针从哪开始呢?就从简单的指针表达式开始吧。

指针表达式

一些声明: char ch = 'a'; char *cp = &ch; 复制代码 现在有了两个变量,一个ch(字符类型变量),一个cp(指向字符类型的指针变量)。 它们的初始化如下: 图中还显示出了ch后面的那个内存位置,由于并不知道它的初始值,所以用一个问号来代替。 下面来讨论一些表达式的意义。 ch &ch cp &cp *cp *cp+1 *(cp

linkia的专栏 1694

指针运算符及指针表达式

通过本次课的学习,主要要求同学们掌握指针的定义及引用方法,理解指针运算符及指针表达式,掌握指针与数组的基本应用,并掌握一些基本的算法设计。

Python调用Google Trends官方数据接口实战指南

Google Trends作为全球最权威的搜索热度分析工具,其数据本质是公开、结构化、可编程访问的时序指标,而非需爬取的网页内容。其底层基于标准HTTP协议与JSON API交互,核心原理在于复现用户浏览器行为——通过/explore接口获取token,再凭token请求/widgetdata/multiline等端点获取归一化(0-100)时间序列数据。该技术路径规避了Selenium渲染依赖与非官方库的脆弱性,具备高稳定性、易调试、可监控等工程优势,广泛应用于竞品监测、内容选题验证、地域营销策略制定等业

weixin_29789925的博客 419

【C语言 | 指针】C指针详解(经典,非常详细)

👉本文介绍了指针的四个要素:指针所在的内存地址、指针的值、指针的类型、指针所指向的类型。指针常用运算符,指针表达式,指针运算等内容。

wkd_007的博客 2330

STM32实战:5分钟搞定CanFestival协议栈下的CANopen心跳报文配置(附避坑指南)

本文详细介绍了如何在STM32平台上使用CanFestival协议栈快速配置CANopen心跳报文,包括硬件准备、协议栈移植、心跳报文配置及常见问题解决方案。通过实战步骤和避坑指南,帮助开发者高效实现节点状态监控,提升工业控制系统的可靠性。

win55的博客 745

C语言笔记 -- 指针表达式

后缀++操作符的优先级高于*操作符, 这两个操作符的结合性是从右向左的。 1、*cp++ 表达式的计算分3个步骤,(1)++操作符产生cp的一份拷贝;(2)++操作符将cp的值加1,使cp指向下一个内存单元;(3)最后,在cp的拷贝上执行间接访问操作。 所以该表达式返回的结果仍然是cp指向的内容,并让cp指向下一个内存单元。 2、(*cp)++ 表达式的计算:(1)加上括号,使它先执行间接访问操作; (2)++操作符先产生*cp的一份拷贝,然后++操作符将*cp加1;(3)最后,返回*cp的拷贝。

qq_28808697的博客 283

告别老旧内核!手把手教你为Android 10设备手动更新WebView(以升级至97版为例)

本文详细指导如何在Android 10设备上手动更新WebView至97版,解决老旧内核导致的兼容性、性能和安全问题。通过ADB命令和图形化操作两种方案,无需Root即可完成升级,显著提升网页加载速度和安全性。

weixin_28672681的博客 582

用LightRAG+Ollama搭建本地知识库:从文档上传到智能问答的完整流程

本文详细介绍了如何利用LightRAG与Ollama构建企业级本地知识库,涵盖从文档预处理到智能问答的完整流程。通过实战案例展示,该方案能高效处理海量文档,实现语义搜索与知识图谱关联分析,显著提升信息检索效率。特别适合金融、医疗等领域的技术团队快速搭建智能知识管理系统。

weixin_42535461的博客 191

第四章 指针表达式

一个表达式的最后结果如果是一个指针,那么这个表达式就叫指针表达式。下面是一些指针表达式的例子: 例六: inta,b; intarray[10]; int*pa; pa=&a;//&a是一个指针表达式。 int**ptr=&pa;//&pa也是一个指针表达式。 ...

weixin_30734435的博客 86

ros入门(八)---TF坐标转换

TF(TransForm),就是坐标转换,包括了位置和姿态两个方面的变换。

weixin_51157015的博客 3388

指针,C的灵魂(4-5)[转]

第四章。指针表达式。一个表达式的最后结果如果是一个指针,那么这个表达式就叫指针表达式。下面是一些指针表达式的例子: 例六: int a,b; int array[10]; int *pa; pa=&a;//&a是一个指针表达式。 int **ptr=&pa;//&pa也是一个指针表达式。 *ptr=&b;//*ptr和&b都是指针表达式。 pa=array; pa++;//这也是指针表达式。 例七

0/1组合 1634

Dify 第 13 篇 Dify 工作流 详解

工作流通过将复杂任务分解为节点降低复杂度,提升LLM应用的性能和稳定性。Dify工作流分为两类:Chatflow面向对话场景(如客服),支持多轮对话;Workflow面向批处理场景(如翻译),提供逻辑节点实现自动化。核心概念包括节点、变量(系统/会话/环境变量)及应用类型差异:Chatflow支持中间输出和对话历史,Workflow仅支持结束节点输出。系统变量以"sys"开头,用于全局数据传递,不同应用类型变量不同,如Chatflow的sys.query存储用户输入,Workflow的s

甘蓝的专栏 3247

29.Labview界面设计 --- (下篇)自定义控件库、界面布局与外观设计

1.自定义控件外观(自定义控件)1.1 自定义外观库1.2 手动自定义控件外观2. 前面板控件布局方式(控件排布)2.1 模块化控制布局方式2.2 数据采集布局方式3. 前面板外观优化项(背景设计)3.1 前面板背景设计3.2 前面板窗口整理本节第一部分教大家安装一种可以直接用的自定义控件库,第二部分教大家如何自己设计控件并保存调用。

关注我,更多技术问题欢迎私聊~ 4781

指针详解

指针详解 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。指针也是一种数据类型,并且也是有值的。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int *ptr; (2)char *ptr;

jiefeng_huang的专栏 419

高通SDX35:SGMII接口PHY RTL8211FSI-CG驱动适配

高通SDX35 RTL8211F SGMII

不秃头的程序猿Gabriel的博客 786

指针

指针是一个特殊的变量,它存储内存里的一个地址。 指针四方面的内容:指针的类型,指针所指向的类型,指针的值或指针所指向的内存区,指针本身所占据的内存区。 例一:  (1)int *ptr;  (2)char *ptr;  (3)int **ptr;  (4)int (*ptr)[3];  (5)int *(*ptr)[4];

kaixinbingju的专栏 548

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

《C和指针》中的警告的总结

C和指针 警告的总结 第一章 快速上手 在scanf函数的标量参数前未添加&字符。 机械地把printf函数的格式代码照搬于scanf函数。 在应该使用&&操作符的地方误用了&操作符。 误用 = 操作符而不是==操作符来测试相等性。 第二章 基本概念 字符串常量中的字符被错误地解释为三字母词。 编写得糟糕的注释可能会意外地中止语句。 注释的不适当结束。 第三章 数据 在声明指针变量时采用容易误导的写法。 误解指针声明中初始化的含义。 第四章 语句

m0_53562251的博客 288

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

指针详解(转载提炼)

看到一网友转载的对C语言指针的解释,很详细。现简化提炼转载如下: 第一章 指针的概念 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。 1.指针类型 从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指...

weixin_30410999的博客 89

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

c语言以小写作为基本,c语言基础

1.C源程序的框架尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。2.C语言源程序的书写规则:(1)C源程序是由一个主函数和若干个其它函数组成的。(2)函数名后必须有小括号,函数体放在大括号内。(3)C程序必须用小写字母书写。(4)每句的末尾加分号。(5)可以一行多句。(6...

weixin_39828859的博客 369

计算机课程 内容是什么意思,大学计算机课程分为哪些,所学内容是什么~

匿名用户1级2013-11-28 回答第一部分 大纲说明1.课程性质、任务与目的《C++语言程序设计》是中央电大计算机应用专业的一门专业基础课。主要任务是介绍C++语言中的数据类型,运算,语句结构及其程序设计的基本方法。目的是使学生掌握一门高级程序设计语言,了解面向对象程序设计的基本概念与方法,进而学会利用C++语言学会解决一般应用问题,并为后续的专业课程奠定程序设计基础。2.与其他课程的关系...

weixin_39726379的博客 402

[精]我眼中的指针zz

发信人: girlrong (阿蓉), 信区: C标  题: 我眼中的指针发信站: 网易虚拟社区 (Mon Aug 2 16:12:02 1999), 站内信件 这篇文章摘自网易广州社区的C语言版精华区。作者girlrong是以前C语言版版主,她乐于助人,虚心诚恳,颇受网友欢迎。只可惜现在已退隐江湖了。                                 作者序为初

871

2016计算机专业考研:c++大学教程第二版目录(上)

2016计算机专业考研:c++大学教程第二版目录,本文为上半部分,专业课的复习,读书很重要: 第1章计算机与C++编程简介 1.1 简介 1.2 什么是计算机 1.3计算机组成 1.4 操作系统的变革 1.5 个人计算、分布式计算与客户/服务器计算 1.6 机器语言、汇编语言和高级语言 1.7 C语言与C++的历史 1.8 C++标...

weixin_30674525的博客 154
上一篇: 第三章。运算符&和*
下一篇: 第五章。数组和指针的关系
btooth
博客等级 码龄21年 197粉丝 39原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值