《C和指针》学习笔记:关键知识点解析
94 浏览量
更新于2024-08-28
收藏 101KB PDF 举报
"这篇学习笔记主要涵盖了《C和指针》一书中的多个关键知识点,包括预处理器指令、特殊的字符序列、静态变量的用法、移位操作、指针操作和函数声明等。\n\n首先,作者提倡使用`#if 0` ... `#endif` 代替`/*` 和 `*/` 来进行条件注释,因为`#if 0` 结构可以嵌套,而多行注释不能。不过,对于单行注释`//`,作者并未给出特别的建议。\n\n在第二章中,介绍了一种特殊的三字母词,即两个问号加一个符号,用来表示其他字符,主要用于避免字符串常量的误解释。例如,`??(` 表示 `[`,`??<` 表示 `{`,`??=` 表示 `#` 等。这些特殊字符的使用可能因编译器而异,理解其含义有助于避免潜在的编码问题。\n\n第三章讨论了`static`关键字的使用。在函数外部,`static`使得变量具有内部链接,限制了其可见性,只在当前源文件中有效。而在函数内部,`static`将自动变量转换为静态变量,使其生命周期贯穿整个程序执行,而不是仅限于函数调用。\n\n第五章提到了位移操作和效率优化。当左移操作数为负值时,行为可能依赖于编译器或者未定义。此外,使用`a+=1`比`a=a+1`更高效,因为前者避免了重复计算。对于`sizeof`操作符,它不计算表达式的值,所以`sizeof(a=b+1)`不会导致赋值操作。\n\n第六章专注于指针,强调未初始化的指针使用是危险的,如`int *a; *a = 12;`可能导致不可预测的行为。作者还提出了返回指针和成功状态值的建议,以增强程序的可读性和安全性,而非简单地使用NULL指针表示未找到。\n\n最后,第七章涉及到函数原型声明。无参数的函数应声明为`int func(void)`,`void`关键字明确表明函数不接受任何参数。\n\n这些笔记是C语言学习者深入理解指针和相关概念的重要参考资料,有助于提升编程技能和代码质量。"
2018-01-05 上传
2010-04-25 上传
2010-06-13 上传
2023-08-30 上传
2023-05-03 上传
2023-05-16 上传
2023-05-12 上传
2023-08-23 上传
2023-10-29 上传
weixin_38688371
- 粉丝: 7
- 资源: 889
最新资源
- 新代数控API接口实现CNC数据采集技术解析
- Java版Window任务管理器的设计与实现
- 响应式网页模板及前端源码合集:HTML、CSS、JS与H5
- 可爱贪吃蛇动画特效的Canvas实现教程
- 微信小程序婚礼邀请函教程
- SOCR UCLA WebGis修改:整合世界银行数据
- BUPT计网课程设计:实现具有中继转发功能的DNS服务器
- C# Winform记事本工具开发教程与功能介绍
- 移动端自适应H5网页模板与前端源码包
- Logadm日志管理工具:创建与删除日志条目的详细指南
- 双日记微信小程序开源项目-百度地图集成
- ThreeJS天空盒素材集锦 35+ 优质效果
- 百度地图Java源码深度解析:GoogleDapper中文翻译与应用
- Linux系统调查工具:BashScripts脚本集合
- Kubernetes v1.20 完整二进制安装指南与脚本
- 百度地图开发java源码-KSYMediaPlayerKit_Android库更新与使用说明