百科知识

bool是什么意思,布尔类型在编程中到底有什么用和怎么用

C++的主要优势

  • C++语言与C语言具有高度兼容性,能够无缝衔接C语言代码。
  • 通过引入面向对象的特性,显著提升了代码的可读性和可维护性。
  • 程序执行效率极高,其性能仅比汇编语言慢10%至20%,展现出强大的计算能力。
  • 具备良好的代码重用机制,支持模块化设计,便于系统扩展和长期维护,同时保证了代码的可靠性。

命名空间机制

C++语言通过引入命名空间(namespace)机制,为程序员提供了自定义作用域的能力,有效解决了命名冲突问题。

  • 其中,std命名空间是C++标准类库的专属命名空间,包含了所有标准库中定义的各类实体名称。
  • 在程序中使用using namespace std语句时,相当于将std命名空间中的所有实体名称导入当前作用域,简化了代码书写。
  • 命名空间的定义格式如下:
namespace 名字空间名称
{
    // 声明或定义成员
};
  • 命名空间的使用方式主要有三种:
  1. 通过作用域解析符访问:名字空间名称::局部内容名
  2. 导入整个命名空间:using namespace 名字空间名称;
  3. 导入特定实体:using 名字空间名称::局部内容名;

基本数据类型与修饰符

类型修饰符的应用

  • signed:用于修饰有符号整数类型,表示该类型可以存储正负数值。
  • unsigned:用于修饰无符号整数类型,仅能存储非负数值。
  • short:表示短整数类型,其存储范围小于标准整数类型。
  • long:表示长整数类型,其存储范围通常大于标准整数类型。

以上修饰符均可应用于整数类型和字符类型。

  1. signed修饰的类型可以取正负值。
  1. unsigned修饰的类型仅能取非负值。
  1. short修饰的类型值不超过对应标准整数类型的范围。
  1. long修饰的类型值不小于对应标准整数类型的范围。

标识符的命名规则

  • 标识符的首字符必须是字母或下划线,C++将下划线视为字母。
  • 以下关键字不能作为标识符:

关键字列表

常量与变量的区别

  • 字面值常量的类型和表示方式:
  • 十进制整数:如10
  • 八进制整数:以0开头,如025
  • 十六进制整数:以0x或0X开头,如0xA2
  • 字符常量:单引号括单字符如’a’,双引号括字符串如”a”
  • 浮点数:小数形式如3.1415或科学计数法如3.12E3
  • 布尔常量:true或false
  • 指针常量:nullptr
  • 常量的定义方式:
  • 字面值常量
  • #define 宏定义
  • const数据类型 常量名=常量值
  • 变量的修饰符:
  • volatile:表示该变量的值可能随时被改变
  • register:建议编译器将变量存储在寄存器中以提高访问效率
  • static:在文件作用域中声明时表示局部静态变量,在函数作用域中声明时表示持久变量
  • extern:表示变量已在其他文件中定义
  • auto:表示自动变量(现基本被废弃)
  • 当为多个变量赋相同初值时,需分别指定每个变量
  • 访问隐藏的全局变量:通过作用域解析符::指定变量所属文件的作用域
  • 指针与常量的关系:
  • 指向常量的指针可以指向常量或变量,但自身不是常量
  • const int c = 10;
  • const int *p = &c; // 正确
  • int *p = &c; // 错误,常量只能被指向常量的指针或常量指针指向
  • 指向常量的指针可以改变指向,但不能改变所指向变量的值
  • 常量指针:指向地址后不可改变
  • const int *const p = &c; // 一旦指向后不可改变
  • 当指向变量时,可以修改该变量的值
  • 关于bool类型:
  • boolalpha:控制逻辑值以true/false输出
  • noboolalpha:控制逻辑值以1/0输出
  • 无名联合体:一组变量共享同一内存空间
  • void指针:通用型指针,可接收任何类型指针,但使用时需显式类型转换

运算符与表达式

数据类型转换规则

数据类型转换分为显式和隐式两种形式

隐式类型转换

  • 函数参数传递时自动转换
  • 表达式计算时自动转换

显式类型转换

  • C语言风格:(目标类型名)待转换源数据
  • C++风格:目标类型名(待转换源数据)
  • 类型转换方向:通常由低精度向高精度转换,反向转换可能导致精度损失

输入输出格式控制

头文件依赖

需包含iomanip.h头文件

setw函数说明

setw(n)仅影响下一个数值输出格式