C++期末复习要点:作用域与生存周期详解

5星 · 超过95%的资源 需积分: 28 9 下载量 125 浏览量 更新于2024-09-10 1 收藏 17KB DOCX 举报
在C++期末复习中,易错点主要包括以下几个方面: 1. 变量分类: - **作用域**:变量可分为局部变量(如auto、static和register,其中auto代表动态局部变量,离开函数后值消失;static局部变量在函数结束后保持当前值,但作用域仅限于函数内;register变量通常用于性能优化,但不是所有编译器都支持,且不推荐滥用,因为它依赖于CPU寄存器,离开函数值消失)和全局变量(外部变量,可以在整个程序中访问,包括静态外部变量,仅文件作用域内可见)。 - **生存周期**:分为动态存储(如auto和形式参数,创建和销毁随函数调用和返回)、静态存储(如静态局部变量和静态外部变量,生命周期贯穿整个程序,但作用域受限制)、以及寄存器存储(register变量,依赖CPU寄存器)。 2. 运算符转换: - 数字操作符转换,如 ^, |, & 表示按位异或、按位或和按位与,它们在二进制下计算,结果为0或1。 - 逻辑运算符 !, ||, && 的应用,这些运算符用于条件测试,非 (!) 返回1或0,逻辑或 (||) 和逻辑与 (&&) 在任一条件满足时返回1,否则返回0。 3. 枚举类型: - 枚举是一种特殊的整数类型,用于定义一组命名的常量。例如,枚举day定义了周一到周日的整数值,注意赋值时应明确枚举名,如`enumday d = Thu`,而不是`enumday d = 4`,因为后者会隐式转换为整数,可能造成误解。 4. 运算符理解: - 后缀++和--(自增/自减)操作符,它们分别表示对变量的当前值进行递增或递减,然后返回新的值。在`while`循环中,如`*p++ != '\0'`,表示逐个检查字符串直到遇到空字符,然后递增指针。 复习C++期末考试时,要特别关注变量的作用域和生存周期的区别,理解各种运算符的正确使用,以及枚举类型和后缀运算符的特性和应用场景。同时,还要确保掌握基础语法,避免在编程过程中出现由于细节理解不足导致的错误。