《C++语言入门经典》一第2章 与计算机交流的手段——数据的计算、输入与输出2.1 C++语言基本要素

简介: 本节书摘来自华章出版社《C++语言入门经典》一书中的第2章,第2.1节,作者 郭鑫 顾彦玲,更多章节内容可以访问云栖社区“华章计算机”公众号查看

第2章 与计算机交流的手段——数据的计算、输入与输出

视频讲解:128分钟

通过鼠标、键盘等设备,我们可以将指令发送给计算机,而计算机会将执行结果显示出
来。这就是输入与输出。输入设备的信号,显示器上体现的图形、文字,甚至喇叭发出的声音
在计算机中的体现都是数据,它是计算机信息的载体。

通过学习本章,读者可以达到以下学习目的:

C++语言的基本要素

数据类型

数据的输入与输出

运算符

结合性和优先级

表达式

语句、左值与右值

2.1 C++语言基本要素

通常程序设计语言的基本要素包括标识符、关键字、常量和变量等。本节将介绍C++语言
的基本要素。

2.1.1 标识符
在C++语言中,变量、常量、函数、标签和用户定义的各种对象,被称为标识符。标识符
由一个或多个字符构成,字符可以是字母、数字或下划线,但是标识符的首字符必须是字母或
下划线,而不能是数字。例如,下面的标识符均是合法的。

maxAge
num
_sex

而下面的标识符是非法的。

1maxAge
nu!m

在C++语言中,标识符是区分大小写的。例如,“value”和“Value”是两个不同的标识
符。此外,标识符不能与C/C++的关键字同名。

注意
在C++语言中,标识符的长度可以是任意的,但是通常情况下,前1 024个字符是有意
义的,这与C语言不同。在C语言中,标识符也可以是任意长度,但是在外部链接进
程中调用该标识符时,通常前6个字符是有效的,如被多个文件共享的全局函数或变
量。如果标识符不用于外部进程链接,通常前31个字符是有效的。

C++语言入门经典
18
宝剑锋从磨砺出 梅花香自苦寒来

2.1.2 关键字

关键字是C++编译器内置的有特殊意义的标识符,用户不能定义与关键字相同的标识符。
C++语言的关键字如表2.1所示。
image

2.1.3 常量

常量的值在运行时是不能改变的,但是在定义常量时可以为其设置初始值。在C++中,可
以使用const关键字来定义一个常量。例如,下面的代码定义了一个MAX_VALUE 常量。

const int MAX_VALUE = 100;

对于常量,编译器会将其放置在一个只读的内存区域,其值不能被修改,但是可以应用在
各种表达式中。如果用户试图修改常量,编译器将提示错误。
常量的最大好处是其使用的灵活性。当程序中有多处需要使用一个常数值时,可以使用常
量代替。当需要改动常数值时,只需要改动常量的值即可。此外,在定义函数时,如果在函数
体中不需要修改参数值,建议将参数的类型定义为常量,这样当用户不小心在函数体内修改了
参数值,编译器将提示错误信息。

2.1.4 变量

其值可以改变的量称为变量。变量提供了一个具有名称(变量名)的存储区域,使得开发

宝剑锋从磨砺出 梅花香自苦寒来
人员可以通过名称来对存储区域进行读写。与常量不同的是,变量可以在程序中被随意赋值。
对于每一个变量,都具有两个属性,也就是通常所说的左值和右值。左值是指变量的地址值,
即存储变量值的内存地址;右值是指变量的数据值,即内存地址中存储的数据。
在程序中定义变量时,首先定义变量的数据类型,然后定义变量名。如下面的代码定义了
两个变量。

int min = 0 ; 
char* pch ;

在定义变量时,可以对变量进行初始化,即为其设置初始值。例如,上面的代码定义了一
个min整型变量,并将其初始化为0。在初始化变量时,可以将变量初始化为其自身。例如:

int min = min;

这样定义虽然是合法的,但也是很“愚蠢”和不明智的。在初始化变量时,可以进行隐式
初始化。例如:

int min(10);

当一条语句定义了多个变量时,可以为多个变量同时指定初始值,并且后续变量可以利用
之前的变量值作为其初始值。例如:

int min = 10 , max = min+50;

说明
在用一条语句定义多个变量时,变量之间用逗号分隔,在最后一个变量定义结束后,
以分号结束语句。

相关文章
|
25天前
|
存储 并行计算 前端开发
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(二)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
39 1
|
25天前
|
数据安全/隐私保护 C++ 容器
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术(一)
【C++ 函数 基础教程 第五篇】C++深度解析:函数包裹与异步计算的艺术
46 0
|
28天前
|
存储 前端开发 Java
【C++ 多线程 】C++并发编程:精细控制数据打印顺序的策略
【C++ 多线程 】C++并发编程:精细控制数据打印顺序的策略
43 1
|
2天前
|
缓存 编译器 API
NumPy与其他语言(如C/C++)的接口实践
【4月更文挑战第17天】本文介绍了NumPy与C/C++的接口实践,包括Python与C/C++交互基础、NumPy的C API和Cython的使用。通过案例展示了如何将C++函数与NumPy数组结合,强调了内存管理、类型匹配、错误处理和性能优化的最佳实践。掌握这些技能对于跨语言交互和集成至关重要。
|
11天前
|
程序员 C++
C++语言模板学习应用案例
C++模板实现通用代码,以适应多种数据类型。示例展示了一个计算两数之和的模板函数`add<T>`,可处理整数和浮点数。在`main`函数中,展示了对`add`模板的调用,分别计算整数和浮点数的和,输出结果。
10 2
|
25天前
|
Java API 开发工具
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(三)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
30 0
|
25天前
|
Java 数据处理 数据库
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(二)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
34 0
|
25天前
|
存储 算法 Java
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(一)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
33 0
|
28天前
|
存储 缓存 安全
【C/C++ 关键字 存储类说明符】C/C++ 的mutable 关键字 忽略对该数据成员的常量性检查在const函数中修改变量值
【C/C++ 关键字 存储类说明符】C/C++ 的mutable 关键字 忽略对该数据成员的常量性检查在const函数中修改变量值
28 0
存储 编译器 Linux
18 0