- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
语言指针总结.doc
第八章:指针
知识结构:
1) 指针的基本概念
2) 怎么定义指针
3) 指针的运算
1)指针的基本概念
内存:以字节为单位,由若干个字节组成 为了便宜管理,给每个字节编号(十六进制) 每一个字节的编号在整个内存都是唯一
定义变量:在计算机内存中去预定内存 各类变量所预定的空间大小不同 整型:int TC 2字节 VC 4字节
long TC 4字节 VC 4字节 short TC 2字节 VC 2字节
实型:float TC4字节 VC4字节
字符型:char TC 1字节 VC 1字节
变量的地址,指向变量的指针 用来存储变量地址的变量,指针变量
指针变量只能存储地址,类型必须要一致才能存储
scanf (〃%d〃,a):
2)定义指针变量
int a, b;
int 氺p,氺q;
类型名*指针变量名1,*指针变量名2...
类型名:该指针变量的基本类型,只能存储对应类型变量的 地址
指明该变量是一指针类型的变量(只能存储地址)
float *ft1,*ft2;
double *dbl,*db2;
指针变量名:不包括*号
怎么样去访问变量的内容:
1) 拿到该变量的地址,直接对该地址进行访问
2) 通过指针变量来间接访问存储单元
怎么样给指针变量赋值:
int a, b;
int 氺p,氺q;
获取变量的地址:
可以用取地址运算符(),将变量的地址取出 〈变量名〉:将指定变量的首字节的编号拿到
得到指定变量的地址
p = a;:将a的地址取出存储到指针变量p中 通过P可以间接访问变量a P就是指向变量a的指针
q = b;
注意:指针变量的类型必须和变量的基类型是一致才能存 储
q = 10; /*指针只能存储地址值*/
int a, b,氺q,氺c,氺p;
p = a;
q = b;
c = p; /*将p中的内容取出,赋值给指针c,使指针c和指
针P同时指向P所指向的变量*/
可以让指针不指向任何存储单元:
int 氺p;
p = NULL;
P = 0;
P = ’ \0’ ;
上面三种方式,都可以使指针P没有指向
int a,氺p;
int 指向指针的指针变量*/
p = a;
q = P;
指向指针的指针变量:
基本类型**指针变量名1, **指针变量名2... 只能存储指针变量的地址,指向的是指针
用指针怎么样来访问变量:
*指针变量名;
运算符将指针所指向的变量内容访问出来
int a,氺p;
a = 10; p = a; a =〉氺p
int a,氺p,氺氺qi
a = 10; p = a;
q = P;
a 氺p 氺氺q
*都是单目运算符
左边必须是一个变量名,不能表达式或常量 左边必须能够代表一个唯一的存储单元地址
错误赋值表达式:
(A+B)二 10
10 = 10
从键盘上输入两个整数,然后输出
*:定义语句中出现时,表示该变量是一个指针变量 执行语句中出现时,代表间接访问指针变量所指向变量的
值
ttinclude /zstdio. hz/
void main ()
{
int a, b, *p=a,氺q,氺c,d; q = b; c = d;
氺c =氺口;
scanf Co/odo/od p,q);
printf (/za=°/od, b=%d\n,氺p,氺q);
10 20
a=10, b=20
Press any key to continue
1)指针变量在定义时就可以给其进行初始化操作 *:定义语句中出现时,表示该变量是一个指针变量
执行语句中出现时,代表间接访问指针变量所指向变量
的值
凡是出现a地方,都可以指针p去代替
凡出现a的地方,都可以用间接访问指针去代替(*p)
指针:为操作存储单元提供一种间接的访问方式 直接访问变量名属于直接操作
交换a,b两个变量的值(指针来操作)
^include stdio.h
void main()
{
int a, b, *p=a,*q=b,t; scanf (//o/od%d/z, p, q):
printf (//l)a=%d,bsO/odXn,水p,水q); t =氺口;
*P = *q;/*将指针变量q所指向变量的值取出来赋 值给指针变量P所指向的存储单元中*/
二 t;
printf (2)a=%d,b=%d\n,*p,*q);
10 20
a二 10, b=20
a=20, b=10
Press any key to continue
输入两个数,找出最大值(用指针来操作)
^include ’’stdio. h” void main()
{
int a, b,*q=b,*max二NULL; scanf (//o/odo/ocT,p,q); if (*p〉*q)
max = p;//使指针max和指针p指向同一个变量 else
m
原创力文档


文档评论(0)