- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
考点一 变量的地址和指针
1、地址和指针的定义
内存地址: 计算机的内存是以字节为单位的一片连续的存储空间,每个字节都有一个编号,这个编号就称为内存地址。一般情况下, 在程序中只需指出变量名,无须知道每个变量在内存中的具体地址。程序中对变量惊喜存取操作,实际上也就是对某个地址的存储单元进行操作。
指针变量: 在 C 语言中,可以定义一种特殊的变量,这种变量知识用来存放内存地址的,这种用来存放地址的变量叫做指针变量。例如:将变量a 的内存地址保存在变量d 中,这时访问变量啊,可以先找到存放地址的d,从中读出a 的地址再去访问a。
2、指针变量的定义和指针变量的基类型
指针变量的定义: 格式 类型名 *指针变量名 1,指针变量名2??;
例如: int*p1,*p2;
指针变量的基本类型:一个指针变量中存放的是一个存储单元的地址,对于基类型不同的指针变量,其内容增1、减 1 所跨越的字节数是不同的,因此在定义指针变量时必须区分基类型。
考点二 指针变量的操作
1、给指针变量赋地址值
通 过 求 址 运 算 符 “” 获 得 地 址 值 例 如 : int k=1,*p;*p=k;注意(求址运算符“”只能用于变量和数组元素, 不可用于表达式、常量或被说明为 register 的变量,必须放在运算对象的左边,而且运算对象的类型必须与指针变量的基类型相同)。
可以通过赋值运算,把一个指针变量中的地址赋给另一个指针变量,当进行赋值运算时,两边的指针变量的类型必须相同。
通过标准函数获得地址值 :可以通过调用库函数 malloc 和calloc 在内存中开辟动态存储单元,并把所开辟的动态存储单元的地址赋给指针变量。
2、给指针变量赋空值
NULL 是在 stdio.h 头文件中定义的预定义符。NULL 的代码值为 0, 可以给指针变量赋 NULL 值,例如:p=NULL;此时 p 为空指针。它等价于:p=’\0’;或 p=0;这时,指针 p 并不是指向地址为 0 的存储单元, 而是有一个确定的值 “空”。
3、对指针变量的操作
通过指针来引用一个存储单元: C 语言提供了一个间接访问运算符 *,又称为间址运算符,它是一个单目运算符。当指针变量中存放了一个确切的地址值时,就可以用间址运算符通过指针来引用该地址的存储单元。
移动指针:是指对指针变量加上活减去一个整数或通过赋值运算使指针变量指向相邻的存储单元,因此,只有当指针指向一串连续的存储单元时,指针的移动才有意义。当指针指向一串连续的存储单
元时,可以对指针变量进行加上或减去一个整数的运算,也可以对指向同一串连续存储单元的两个指针进行相减的运算。例如:
main()
{int a[10]; int *p,i;
for(i=0;i10;i++) scanf(“%d”,a[i]); printf(“\n”); for(p=a;p(a+10);p++) printf(“%d”,*p);
}
在程序的最后一个循环语句中,用指针变量 p 指向数组 a,每执行一次for 循环,都使指针变量 p 指向下一个数组元素,再通过*p 输出数组中的每一个元素。(因为 a 是一个数组名,它是一个常量(地址),所以它不能自加,于是将 a 赋给指针变量 p,p 作为一个变量才可以自加)
指针的比较:在关系表达式中可以对两个指针进行比较,通常两个或多个指针指向同一数组(如一串连续的存储单元)时,指向前面元素的指针变量小于指向后面元素的指针变量。如果定义一个函数的类型为指针类型,那么函数最后将返回一个地址值。
您可能关注的文档
最近下载
- 海信日立空调工程安装操作标准.pdf VIP
- 2021-2027全球及中国红外探测器芯片行业研究及十四五规划分析报告.docx VIP
- 2025-2026学年小学美术二年级上册(2024)岭南版(2024)教学设计合集.docx
- 02s404防水套管图集.docx VIP
- NASA认知负荷评估量表(TLX).docx VIP
- 20以内加减法练习题(a4).pdf VIP
- 光纤通信考试题及答案.doc VIP
- 天津市南开区2024-2025学年九年级上学期期末语文试题(含答案).pdf VIP
- 2025年公路水运安全员证考试题库答案.docx
- (推荐!)《ISO 37001-2025反贿赂管理体系要求及使用指南》专业深度解读和应用培训指导材料之7:9绩效评价(2025A1).docx VIP
文档评论(0)