指针的点运算和箭头运算(->)

(其实点运算是结构体变量访问其成员的操作符

箭头运算是结构体指针访问其指向的成员变量的操作符

突然发现指针的两个运算符我是不太清楚的,就翻书搞了下:其实点运算和箭头运算都可以当作访问指针所指向的 结构体或者类对象的成员是用的操作符。比如:

struct song

{

int a;

}

有这样一个结构体,定义:

song s;

s.a=1;

song *p;

p=&s;

那么要访问指针p所指向的内存:

(*)p.a  和  p->a 是等价的

PS:

1.点运算比*运算优先级高,故如果用  .  运算,括号不可省。因为(*)p是指针怕指向的结构体变量,故可以用点运算来访问其成员

2.而箭头运算只能指针用,比如 声名 int *p

p是指针,*p就是p所指向的一个int 变量的内存

另外附一篇blog参考

http://blog.csdn.net/taric_ma/article/details/7397362

指针的点运算和箭头运算(-)相关推荐

  1. c语言字符指针初始化赋值,C语言_指针变量的赋值与运算,很详细详解

    指针变量的赋值 指针变量同普通变量一样,使用之前不仅要定义说明, 而且必须赋予具体的值.未经赋值的指针变量不能使用, 否则将造成系统混乱,甚至死机.指针变量的赋值只能赋予地址, 决不能赋予任何其它数据 ...

  2. c语言指针赋值指针变量赋值吗,C语言_指针变量的赋值与运算,很详细

    指针变量的赋值 指针变量同普通变量一样,使用之前不仅要定义说明, 而且必须赋予具体的值.未经赋值的指针变量不能使用, 否则将造成系统混乱,甚至死机.指针变量的赋值只能赋予地址, 决不能赋予任何其它数据 ...

  3. MATLAB中按点运算“.* ./”和一般运算的区别

    1 前言 今天在学习逻辑回归~ MATLAB中的乘除有两种形式分别是:"* & .*"和"/ & ./",分别指按点运算和矩阵运算. 2 除法/ ...

  4. 国2c语言中指针与数组的赋值运算,C语言到汇编-指针与数组2

    本章剩下的内容主要有: 1.指针与数组 & 地址算术运算 2.字符指针与函数 3.多维数组 & 指针与多维数组 4.指向函数的指针 每个内容举一个例子,第一个例子: int a[10] ...

  5. c语言指针的相关运算,C语言指针的运算

    本文讨论使用指针进行的运算,最重要的运算是获取指针所引用的对象或函数.也可以比较指针,使用指针来遍历一个内存区域. 使用指针读取与修改对象 间接运算符 * 生成内存中的位置,该位置的地址存储在一个指针 ...

  6. C指针3:指针变量的运算

    由上节介绍我们知道,通过指针可以修改内存上的数据,并进一步可以交换数据.这种操作实际上也是在对地址进行操作运算.具体怎么实现指针变量的元素呢?为什么能实现指针变量的运算呢? 因为指针变量保存的是地址, ...

  7. 【C 语言】结构体 ( 指针运算与指针内存操作 | 结构体成员偏移量计算 )

    文章目录 一.指针运算 与 指针内存操作 二.结构体偏移量计算 一.指针运算 与 指针内存操作 指针变量算术运算 ( 指针可以是任意值 ) : 指针 是一个变量 , 如果对指针进行 算术 / 逻辑 等 ...

  8. 【C 语言】指针 与 数组 ( 指针 | 数组 | 指针运算 | 数组访问方式 | 字符串 | 指针数组 | 数组指针 | 多维数组 | 多维指针 | 数组参数 | 函数指针 | 复杂指针解读)

    相关文章链接 : 1.[嵌入式开发]C语言 指针数组 多维数组 2.[嵌入式开发]C语言 命令行参数 函数指针 gdb调试 3.[嵌入式开发]C语言 结构体相关 的 函数 指针 数组 4.[嵌入式开发 ...

  9. c语言中减号算一个字符吗,C语言中指针的加减运算

    char arr[3]; printf("arr:\n%d\n%d\n%d\n", arr, arr + 1, arr + 2); char *parr[3]; printf(&q ...

最新文章

  1. java 跳转 oop_Java基础之:OOP——接口
  2. Mysql 架构及优化之-定时计划任务
  3. pycharm配置git版本管理
  4. 使用 QEMU 进行系统仿真
  5. android数据库降级_android——数据库版本升/降级问题
  6. project 模板_18个施工进度计划横道图模板,自动出图超方便,全部在这儿给你准好了...
  7. Java:Linux上java -jar xxx.jar命令执行jar包时出现Error: Invalid or corrupt jarfile xxx.jar解决方案...
  8. (转)WebSphere的web工程中怎么获取数据源
  9. linux 重启oracle实例_Oracle实战(二)-Oracle概述
  10. python单词的含义-Python常用英文单词有哪些?
  11. Java虚拟机的参数
  12. 【python第三方库】playwright简要入门
  13. 中国标准走进国际视野,首个零信任国际标准的诞生往事
  14. 我爱 Ruby 的三十七个理由
  15. 多线程设计模式——Master-Salave(主仆)模式
  16. winvnc源码阅读笔记(四)---------vncDesktopThread线程
  17. 华硕主板无盘启动bios设置_华硕主板怎么进入bios?华硕主板进入bios设置u盘启动方法...
  18. html中怎么给表格增加序号,如何给word表格中添加编号
  19. linux服务器odbc在哪看,在Linux上寻找odbc.ini和odbcinst.ini文件的良好文档
  20. Python爬虫问题汇总(持续更新)

热门文章

  1. 广告威客任务平台源码投票抖音点赞兼职悬赏/蚂蚁帮扶众人帮/可封装App带教程
  2. chrome 浏览器中罗技鼠标滚轮失灵问题解决方法
  3. 计算机无法上网的软件故障,win10系统部分软件无法正常连网的原因及解决方法...
  4. 三国杀ol服务器维护时间 11月6日,《三国杀OL》停运通知
  5. 剑指offer系列——剑指 Offer 25. 合并两个排序的链表
  6. SSD固态硬盘——分类
  7. 估计值与平均值的离差平方和_观察值与均值的离差平方和最小.PPT
  8. java中aop和aoc的区别_法国AOC、AOP、VDP和IGP葡萄酒有什么区别?
  9. 货币政策的目标、工具、中性利率、货币乘数及对宏观经济的影响分析
  10. pywinauto WXWork(企业微信) 获取工作台中的信息