C语言——指针的运算
来源:互联网 发布:领导干部网络培训 编辑:程序博客网 时间:2024/05/17 05:31
转载自
一 :取地址运算“&”与取内容运算“*”:
单目运算“&”是取操作对象的地址 , “*”是取指针指向的对象的内容 , 两者互为逆运算
int x , *p ;
p = &x ;
&(*p) = p 表示指针 ; *(&x)= x 表示变量x .
二 :指针的算术运算 :
指针的运算与其基类型有关 , 一般的,如果p是一个指针 ,n是一个正整数 ,则对指针 p 进行 +(-)操作后的实际地址是 :
p +(-)n*sizeof(基类型)
char *p ;
int *q ;
float *tk ;
//假设当前地址为 : p = 2110H , q = 2231H , tk = 2478H
p += 1 ; // p = p + 1 = 2111H
q += 4 ; // q = q + 4*4 = 2239H
tk -= 3 ; // tk = tk -3*8 = 246CH
三 : 指针自加 ,自减运算 :
指针的自加 ,自减运算也是地址运算
m = * p ++ 等价于 m = *(p ++)
取指针 p 当前所指变量的值赋给变量 m ; p 做加 1 运算 , 指向下一个目标变量 .
m = * ++ p 等价于 m = * ( ++ p)
p 做加 1 运算 , 指向下一个目标变量 ; 取指针 p 当前所指变量的值赋给变量 m .
m = (*p)++ 与 m = ++(*p)
前者是将指针 p 所指的变量的值赋给变量 m , 然后变量 *p 自加 1 ;
后者是将指针 p 所指的变量 *p 的值自加 1 后赋给变量 m .
四 :指针间的减法运算 :
指向同一组类型相同数据的指针之间可以进行减法运算 , 相减的结果表示两指针间相距的数据的个数 .
五 :指针的关系运算 :
p , q 指向同一个数组 , p > q 表示p 是否指向 q 所指位置的后面 , 若成立 则 表达式的值为 非 0 , 否则为 0 .
六 :指针的下标运算 :
p[i] = *(p + i) ;
0 0
- C语言——指针的运算
- C语言——指针的运算
- C语言指针——指针的运算
- 【C语言】指针运算—— 算术运算,关系运算
- C语言指针的运算
- C语言指针的运算
- C语言:指针的运算
- C语言指针系列三——指针运算本质
- C语言指针导学(2)——指针的定义及运算
- C语言指针导学(2)——指针的定义及运算
- C语言指针导学(2)——指针的定义及运算
- C语言指针导学(2)——指针的定义及运算
- C++预科——C语言指针回顾(三) 指针的运算
- C 语言中指针变量的运算
- C语言指针的算术运算
- C语言指针变量的运算
- C语言指针变量的运算
- c语言 指针变量的运算
- Android实用代码
- Android避免加载图片出现OOM
- Cocos2d-x3.1中使用万普平台实现Android平台广告添加
- OAuth 2.0
- 线程锁的概念函数EnterCriticalSection和LeaveCriticalSection的用法
- C语言——指针的运算
- poj 3071 Football 概率dp
- MFC自定义类访问主窗口控件
- C++ 虚函数表解析
- Python的常见配置工具
- 《过好每一天》综合唯识论的基本原理
- Mmap Internals
- 郑石岩教授,中国台湾政治大学教育学硕
- Android LayoutInflater原理分析,带你一步步深入了解View(一)