指针变量与++ --结合
来源:互联网 发布:mac视频下载插件 编辑:程序博客网 时间:2024/05/20 15:41
指针变量 跟 ++结合的时候由于优先级的问题,有时候会弄混淆,梳理如下:
1、 表达式及 ++
对于任何一个表达式,表达式会做一些事情,并且整个表达式有个值。
比如 a+b ,表达式做的是加法,并且表达式的值就是 两个数的和。
对于 a++ 这种表达式,会对a自身+1, 但是表达式的值是a改变以前的值。
对于 ++a这种表达式,也会对a自身+1,但是表达式的值是 a改变以后的值。
int a = 1;
b = a++; //这里 b 得到的是 a++这个表达式的值,也就是a改变以前的值。
b= ++a; //这里b 得到的是++a这个表达式的值,也就是a改变以后的值。
2、++与指针结合。
++ 的优先级 高于 *。
int a[5] = {0,1,2,3,4};
int *p = &a[0];
以下两个分支:
2.1-----------------------------------------------
当写表达式 *p++ 的时候 相当于 *(p++), p++这个表达式的值是p改变以前的值,也就是a[0]的地址,所以这里访问的是a[0],并且p指向a[1];
b = *p++, b的值是a[0],p指向a[1],a[0]不变。
2.2-----------------------------------------------
当写表达式 (*p)++的时候,由于括号优先级最高,所以这个表达式的值是 a[0]++;
b = (*p)++,b的值是a[0]改变以前的值,然后 a[0]自增1,p不变。
- 指针变量与++ --结合
- 指针变量与变量
- 指针与指针变量
- 指针与指针变量
- const与一级指针二级指针结合
- 指针变量与变量地址
- 指针变量的++与--
- 指针与变量类型
- 6.2、变量与指针
- 指针与变量
- 指针与引用变量
- C++变量与指针
- 指针与函数和数组结合
- C语言字符串、数组与指针结合
- C++ const与指针的结合
- 函数指针与链表结合举例
- 指针变量与变量的比较
- 指针变量与指针的区分
- ArcGIS教程:时态数据管理和可视化快速浏览
- 修改Oracle字符集
- JavaScript-4.2函数,变量作用域---ShinePans
- 使用 NDK r9 编译ffmpeg
- PHP session destroyed / lost after header
- 指针变量与++ --结合
- OJ(Online Judge)系统及ACM测试题库大全
- 黑马程序员——Java基础---GUI
- 学习Oracle SQL Developer的十大理由
- 基于stm32处理器的PWM 异步驱动蜂鸣器
- JavaScript中的字符串大小比较
- 诺基亚所犯的错误是还停留在工业时代,工业时代讲究的是成本和质量
- 黑马程序员_继承
- Asterisk使用数据库配置方法