- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第16讲 指针定义与引用
第22讲 指针定义和引用;1、存储单元与地址;···;3、指针和指针变量;1、指针变量的定义;2、指针运算符与取地址运算符; 运算符返回某个变量的内存地址。而指针变量就可以通过的赋值语句,指向该变量。;作用:取指针所指向的地址空间的内容,即取指针所指向的变量的值。
例1: int i=100, *p1;
p1=i;
printf(“%d\n”, *p1); //显示:100;a;实例1: 指针的使用;实例2: 指针运算符的使用;3、指针变量的初始化;4、指针的运算;1)指针赋值运算:赋地址运算;例2 两个指针变量交换指向。
#include stdio.h
main( ){ int *p1, *p2, *s;
int x1=10, x2=20;
p1=x1; p2=x2;
printf(*p1=%d,*p2=%d\n, *p1, *p2 );
s=p2; p2=p1; p1=s; printf(*p1=%d,*p2=%d\n, *p1, *p2 );
};2) 算术运算:移动指针;例 指针与数组。
#include stdio.h
main( )
{ int a[10]={0,1,2,3,4,5,6,7,8,9};
int n=6, *p1, *p2;
p1=p2=a;
printf(1) *p1=%d,*p2=%d\n, *p1, *p2 );
p1=p1+n;
p2++;
printf(2) *p1=%d,*p2=%d\n, *p1, *p2 );
--p1; p1=p1-4; n=p1-p2;
printf(3) *p1=%d, *p2=%d,n=%d\n, *p1, *p2 , n);
};3) 两个指针的关系运算;三、指针变量作为函数参数;例1 指针作为函数参数。
#include stdio.h
swap( int *x, int *y ){ int temp; temp=*y; *y=*x; *x=temp; /* 交换变量的值 */
}
main(){ int a=10, b=20; printf(1)a=%d, b=%d\n,a,b);
swap(a,b); /* 调用函数交换变量a和b的值 */
printf(2)a=%d, b=%d\n,a,b);};例2 指针作为函数参数。
#include stdio.h
void swap( int *x, int *y )
{ int *p;
p = x; x = y; y = p;
}
void main()
{ int a=10, b=20;
int *p1=a, *p2=b;
printf(1)a=%d,b=%d\n, a, b);
swap( p1, p2 );
printf(2)a=%d,b=%d\n, a, b);
printf(3)*p1=%d,*p2=%d\n, *p1, *p2);
}
文档评论(0)