指针引用运算符语句课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《指针引用运算符语句课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 指针 引用 运算 语句 课件
- 资源描述:
-
1、第三讲第三讲指针引用运算符语句2本讲内容本讲内容1.上次作业讲解2.指针及其应用3.引用4.运算符5.循环语句6.本讲作业 定义一个指向整型变量空间的指针,并初始化为整型变量a的起始地址,使p指向a。5p1001a 10012003一个指向整型变量的指针一个指向数组空间的指针一个指向指针变量空间的指针可以指向,但还未指向P2003 100120一个整型空间1001赋给同类型的变量地址值赋给同类型的指针变量的值 P1a*P1*P2P2.1 2 3此处无代表取值 int a10,*p;p=a;/p指向数组a中的a0元素 p=p+1;/这时p指向a1int a10,*p1,*p2;p1=&a2;p2
2、=&a5;/分别指向数组中的不同元素 int m=p2-p1;/所得为指针间相隔的元素个数P2003 1001a0a100110051009100d1011a1a2a3a4P2003 10050 x00428D54指针地址是无符号长整形:4 byte下标表示 ai指针表示 *(a+i)将4赋给a1下标表示 bij指针表示 *(*(b+i)+j)b0b1b2b00b01b02b03b10b11b12b13b20b21b22b23b#include iostream.hvoid main()int a12,*p=a;for(int i=0;i12;i+)*p=i+1;/元素赋值元素赋值 if(i%
3、4=0)coutendl;cout*pt;p=p+1;123456789101112a12pa0a1a2a9a10a11*pa0,指针下跳1,*pa112345678910101112a23a00int a34;int*pa=a00;/指针指向数组首元素指针指向数组首元素for(int i=1;i=12;i+)*pa=i;/给元素赋值给元素赋值 cout*pat;/输出元素的值输出元素的值 pa=pa+1;/指针往下走一单元指针往下走一单元/如果是如果是4的倍数换行的倍数换行 if(i%4=0)coutendl;行i组j列kabcd0uvwx0abcde0s6pchar s6=abcde;ch
4、ar*p=s;coutpors;p=p+1;coutp;#include void main()static int a5=5,4,3,2,1;int i,j;i=a0+a4;/下标表示 j=*(a+2)+*(a+4);/指针表示 coutitj;int*pa=a;pa=pa+1;/pa=?*pa=?pa+;/pa=?*pa=?a0、a1、a2=?101154321a0a(1001)100110051009100d1011a1a2a3a410096 4 1005 4 1009 3 5 4 3#include iostream.h#include void main()void main()st
5、atic int static int b 4=1,2,3,4,5,6;b 4=1,2,3,4,5,6;b02=7;b12=8;b02=7;b12=8;cout cout*btbt*(b+1)n;(b+1)n;cout cout*(*b+1)tb+1)t*(*(b+1)+2)(b+1)+2)n;n;cout coutb02+b12+b22;b02+b12+b22;b0b1b2b00b01b02b03b10b11b12b13b20b21b22b23b12304000560078输出结果为:输出结果为:1 4 2 815#include iostream.hvoid main()static ch
6、ar s1=abcde,s25=m,n,p,q,0;char*ps=s1;couts1 or s2endl;coutpsn;couts21s22s13s14endl;cout*ps*(ps+2)*(ps+4)*ps+2;abcde or mnpqabcdenpdeace99abcde0mnpq0S1S2ps int A4A0A1A2A3100010041008100C int B44B0B1B2B30123用数组存放用数组存放26个字母并输出个字母并输出#include iostream.hvoid main()char s 26;for(int i=0;i26;i+)si=A+i;/si=6
7、5+i/给数组元素赋值 coutsi ;/输出数组 ABCDEFGHIJKLMNOPQma3.8算术运算符关系运算符逻辑运算符位操作运算符赋值运算符其他运算符运算符的优先级和结合性等效于等效于等效于等效于 int a=3;int b=+a;int c=a+;。近水楼台先得月4a值表达式值a值表达式值345444()x=015 00001101 y=0 x2b 00101011 x|y 00101111 47 xy 00100110 38 x&y 00001001 9 x 1 1 1 1 0 0 1 0 y 1 1 0 1 0 1 0 0 x+y 10 0 0 0 0 1 1 0 x=4 000
8、0 00102例题:位运算已知:unsigned int x=015,y=0 x2bA:!a&b+B:a|b+4&a*bC:a=1,b=2,ab?+a:+bD:+b,a=10,a+5E:a+=b%=a+b b=b%(a+b),a=a+b;F:a!=b2=a+1;intint a(5),b(3);a(5),b(3);求表达式、求表达式、a a、b b的值的值910,5,31,5,33,1,315,10,48,8,31,5,3简称:短路A:d+-rd;B:*pd*rd;C:+*pd-rd;D:+rd-d;int d(5),*pd=&d,&rd=d,求表达式的值A:0B:25C:0D:0;实现把a和
9、b 中较小的值赋给x ABTFP最后一个表达式的值就是逗号表达式的值 除最高的元素成员,最低的逗号外,其余的一二三赋值,对双目运算:算术关系逻辑,移位逻辑位放中间口诀:口诀:int a=7*2+-3%5-4/3;/a:10 float b=510+3.2e3-5.6/0.03 /b:3523.33 int m(3),n(4);a=m+-(-n);/a:0 m:4 n:3 char x(m),y(n);int n;n=x3)+(y-x=1);/n:3 int a(3),b(0);!a&a+b&a+;/a:3 a|b|b+/b:0简称:短路 int a(3),b(4),c;c=ab?+a:+b;/
10、c:5 c=a-b?a+b:a-3?b:a;/c:8 从右向左结合从右向左结合 c=a-b?a+b:(a-3?b:a);/相当于相当于 int x(1),y(3),z(5);/从右向左结合 x+=y*=z-=2;/?(10,9,3)z=(x*=2)+(y+=4)+2;/?(2,7,11)int a,b,c;a=1,b=2,c=a+b+3;/c:6 c=(a+,a+=b,a+b);/c:6 short,char-int-long-double,float-double3+4.0 a-4 b=a+int(3.14);/显式转换int a(5),b;b=a+3.14;/两次隐式转换第1行一个第2行二
展开阅读全文