C语言笔试重点:指针与函数参数
需积分: 22 76 浏览量
更新于2024-08-16
收藏 455KB PPT 举报
"指针变量做函数形参传址-计算机二级"
在计算机编程,特别是C语言中,指针是一个非常重要的概念。指针变量可以存储内存地址,它允许我们间接地访问和修改存储在该地址上的值。在函数调用时,通过将指针作为参数传递,可以实现对原变量的直接操作,这就是所谓的"传址"调用。这种调用方式被称为"传址调用"或"引用调用",与"值调用"(直接复制变量的值)相比,它允许函数内部的更改影响到外部的变量。
例如,给定的代码段展示了一个简单的交换两个整数的函数`swap`,它接受两个整数指针作为参数。在这个函数中,`t=*x`表示将`x`指向的值赋给临时变量`t`,然后`*x=*y`和`*y=t`分别将`y`指向的值赋给`x`指向的内存位置,`t`的值赋给`y`指向的位置,实现了两个整数的互换。在`main`函数中,`&a`和`&b`分别获取了变量`a`和`b`的地址,并传递给`swap`函数,因此在函数内部对指针的修改会影响到`a`和`b`的值。
这个程序的输出结果是A)2,1,因为在调用`swap(&a,&b)`后,`a`和`b`的值进行了交换,原来的1和2变成了2和1。
在计算机二级考试中,这样的知识点可能出现在选择题或者填空题中,考察考生对于指针的理解和使用。除了指针传址,笔试考试还可能涵盖其他C语言的关键知识点,如表达式的计算、`switch`语句的使用、字符串处理、`sizeof`运算符的应用、函数的定义与调用、指针的高级用法(如指针数组、指针函数等)、变量的作用域、宏定义、`typedef`用法、结构体和共用体、链表以及文件操作等。
在实际的编程中,理解和熟练运用这些知识点是非常关键的,它们构成了C语言编程的基础。例如,逻辑运算符`&&`和`||`的短路特性,即在逻辑与运算中,如果第一个表达式为假,就不会计算第二个表达式;在逻辑或运算中,如果第一个表达式为真,就不会计算第二个表达式。这在编写条件判断时可以避免不必要的计算。
另外,指针的自增操作`p++`和`*p++`的区别也经常被考察。前者将指针本身加1,后者先取指针所指的值,然后将指针加1。在循环中,这种操作会影响指针的移动和值的更新。
在提供的代码片段中,第13题的程序通过`*p++`在每次循环中将指针向后移动并更新数组元素,所以当访问`a[2]`时,其值已被更新为6。第15题的程序展示了函数参数的求值顺序问题,以及逗号运算符的优先级,其结果取决于具体的求值顺序规则。第30题的程序利用了`printf`的格式化输出,但没有给出完整代码,所以无法确定输出结果。
这些题目都是对C语言基础语法和指针特性的深入考察,对于准备计算机二级考试或者其他编程考试的学生来说,熟练掌握这些知识是至关重要的。
2021-10-11 上传
2013-10-12 上传
2021-09-19 上传
2021-11-01 上传
2022-07-14 上传
2021-10-10 上传
2012-03-30 上传
2021-09-19 上传
点击了解资源详情
冀北老许
- 粉丝: 19
- 资源: 2万+
最新资源
- 电视查询
- redux-delete-codealong-sea01-seng-ft-060120
- GFN:用于融合图像去模糊和超分辨率的门控融合网络(BMVC 2018口腔)
- OP协议,OP协议测试工具,Open Interface,电动扳手OP测试,纯程序
- Solo_Project_Frontend
- poirot:一个展示私有仓库部署的简单仓库
- go-repo
- 致敬:向Alain deMonéys致敬。 Freecodecamp致敬页面练习
- ASP.NET动态渐变处理程序
- 华为简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- php sg11扩展 linux-64版本
- YourLife:http
- SuperfundSitesbyCollege:靠近学生PIRG和超级基金站点的校园(未经事实检查,未经作者许可不得重复使用或引用)
- GroupDocs.Merger-for-Java:GroupDocs.Merger for Java示例,插件以及展示项目和网站
- rent-receipt-generator
- pi:我的树莓派的项目代码