#
开头的代码
-
编译预处理 :编写完源程序,在执行编译之前,编译器 会首先调用预处理器,找到所有以
#
开头的代码行进行处理。- 预处理指令
include
意思是找到后面跟随的文件,并且加载文件内容到程序中
预处理器的典型 *** 作包含在源代码被编译前,进行内容的替换和添加
- 头文件是预先制造好的工具库,其中包含了帮助程序员快速实现功能的工具
系统头文件
iostream
包含了使用程序进行输入输出的工具例如:可以使用
cout
进行消息显示- 程序员可以自行编写头文件,用来制造自己的工具
- 在编译预处理之后,源代码文件将和头文件组合起来,在编译的下一阶段使用
- 预处理指令
namespace
- 命名空间的目的是让大型程序在组合多个厂商的代码时,便于管理重复命名的功能模块。
是C++中的一项特性。
Tips: 这就好像这样一种情况,当一个班上有两个名叫张爽的学生时,为了明确区分他们,我们在使用名字之外,不得不使用一些额外的信息,比如他们的家庭住址,或者他们父母的名字等等。
- 关于输入输出的组件都被存放在标准命名空间
std
中
- 如
iostream
中用于输出的cout
实际名称为std::cout
,用于换行的endl
实际名称为std::endl
程序中的主函数
- 使用
using
声明之后,程序员可以直接使用命名空间中定义的名称,不需要额外指定前缀
main
- C++程序的运行从主函数 -
main()
开始。 - 每个C++程序有且仅有一个
main()
函数,程序在运行时会自动调用main()
函数。
- 主函数是用来实现一个或多个功能的代码块
int main()
中的int
指定了函数的返回类型- 以左大括号
"{"
开始,右大括号"}"
结束- 在大括号
"{}"
之间的部分称为程序主体
程序主体:
return
语句代表了函数将会返回的内容
- 当主函数返回一个
0
时,说明程序正常运行结束- 返回其他非
0
的数值会造成系统认为程序异常退出
cout
打印内容
- C++中,使用标准库函数提供的
cout
将""
中间的内容输出打印在屏幕上,并且进行换行。
cout<<"输出内容"<
- 每一个分号
";"
表示一个语句的结束
- 函数体的每一句代码后面都需要
";"
存在
- 输出借助
cout
,可以通过插入 *** 作符"<<"
赋予输出内容
- 上示例代码中的输出内容为
Hello, World!
注释-藏在代码中的说明书
- 换行符
endl
可以使内容输出之后,光标回准到下一行第一个字符,即换行
-
注释用来标记语句的作用或者解释复杂代码块的功能,可以提高程序的可读性,是程序员为读者作的说明。
-
在编译过程中,注释中的所有内容会被编译器自动忽略,最终也不会被执行。
-
在C++中,以双斜杠
"//"
用来注释内容,之后的内容直到行末都为注释。 -
注释可以单独位于一行上,即占一整行;也可以与代码出现在同一行中。
Tips:使用注释还可以在调试过程中让某一行代码失效,因此,可以通过注释某些代码,来检验程序的运行情况。
//导入系统输入输出头文件 iostream
#include
//使用标准命名空间 std
using namespace std;
int main() {
// TODO 将Hello, World!打印在屏幕上,并且进行换行
cout << "Hello, World!" << endl;
return 0;
}
变量
变量指的是会随着程序运算而改变的量。
- 计算机的存储功能会使用内存实现。
- 计算机中的 *** 作系统一般会把内存划分成不同区域来存储数据,以便于管理。
- 内存中每个基本存储单元可以存放一个字节的数据,每个字节具有8位,也就是8个比特(bit)。
- 每个内存单元有一个唯一的地址,常用一个16进制数表示和区分。
-
变量是专门用来存储数据的容器,会根据数据类型决定容量大小。
-
变量对应着内存中的一个地址,用于计算时数据的存储和读取 。
-
一般的声明方式为
数据类型 变量名称
。// 导入系统输入输出头文件 iostream #include
// 使用标准命名空间 std using namespace std; int main() { // TODO 声明可乐数量变量 coke int coke; // TODO 声明爆米花数量变量 popcorn int popcorn; // TODO 声明消费总额变量 money int money; return 0; }
在C++中,变量名称也叫做标识符,表示⽤来标记和识别不同变量的不同的符号,有固定的构造规则:
-
只能由字⺟ 、数字和下划线组成;特别的;在C++中,标识符中的英文字母是区分大小写的;
- 例如:
sweet_popcorn
合法,但是zero&coke
使用了符号&
,因此不合法。
- 例如:
-
数字不可以出现在第一个位置上;
- 例如:
coke330
合法,但是330coke
以数字作为开头,因此不合法。
- 例如:
-
在C++中,标识符中的英文字母是区分大小写的;
- 例如:
coke330
和Coke330
表示的是完全不同的变量名称,即表示不同的标识符。
- 例如:
-
C++的关键字(保留字)不可以⽤做标识符;
- 例如:
pout
合法,但是cout
是C++的关键字,不可以用作标识符,因此不合法 Tips: 无需背诵所有关键字
- 例如:
-
常见的关键字有
cout
、int
或include
等具有特殊含义的字符 -
完整的表格见参考资料。
-
变量的初始化 即赋予变量一个初始值。
-
变量在初始化时应该根据数据类型进行赋值,否则将会发生错误.
- 例如:不能把小数赋值给一个整数类型的变量
int a = 3.14 ;
是错误的。
- 例如:不能把小数赋值给一个整数类型的变量
-
未进行初始化的变量具有不确定的数值,直接进行计算将会发生错误
- 例如:没有初始化
sum
值,就进行相加计算。sum = sum + 1;
是不能够被执行的
- 例如:没有初始化
输出即在屏幕上输出展示信息内容。
内存可以看作一个充满盒子的仓库,每个盒子可以储存计算时用到的数据,称为一个变量。
那么,计算机如何定义存放在变量中的数据呢?
- 字面量就是存放在变量中的数据。
- 字面量经常会被装到变量中使用,这个 *** 作叫做赋值,一般写法为
变量名 = 字面量
。
-
整数字面量是没有任何小数或指数部分的数字字面量,与数学中的整数直接关联。
-
十进制:直接写出的整数。
例如:
0
,23
,-1024
-
八进制:以数字
0
开头的整数,有效数字为0~7
,并且不带有正负号。例如:
0126
,0163
-
十六进制:以
0x
或0X
开头的整数,有效数字为0~9
、A~F
(a~f
),并且不带有正负号。例如:
0x12a
,0xf39
-
-
浮点字面量是有分数形式或指数形式的数字字面量,与数学中的小数直接关联。
-
小数形式:由数字和小数点组成
例如:
0.66
,30.0
,14.15926
-
指数形式:在数学中,一个可以用幂的形式来表示的形式。
在C语言中,则以
e
或E
后跟一个整数来表示以10
为底数的幂数。e
或E
的左侧必须要有数字e
或E
的右侧为幂次的数值,必须为整数- 上述小数可以等价表示为:
6.6E-1
,30.0e0
,0.01415926E3
-
分为单字符字面量与转义符字面量。
-
单字符字面量:
通过将单个字符括在单引号内来创建字符字面量。
例如:
'a'
,'m'
,'F'
,'2'
,'}'
等。 -
转义符字面量:
使用’'开头的转义字符序列来表示一个特殊字符。
Tips:有时,在C++编程中必须使用不能键入或具有特殊含义的字符。
例如,换行符(回车),制表符,问号,引号等。
为了使用这些字符,就会使用’'开头的转义字符序列用来表示一个特殊字符。
例如:
`'\n'`表示换行符;
`'\t'`表示制表符;
`'\''`表示单引号字符(不被解析成字符外的单引号);
`'\\'`表示真正的斜杠字符。
所有的字符字面量在计算机里都是有一个编码的,为了避免大家用不同的编码,造成混乱,美国的组织就出台了ASCII编码(American Standard Code for Information Interchange:美国信息交换标准代码),所有字符都采用ASCII编码,共有128个字符。
每个字符都对应着一个0~127
之间的整数。
-
字符串字面量是由一对双引号括起来的字符序列
-
字符串中可以包含类似于字符字面量普通字符以及转义字符
-
字符串除了存储所包含的字符外,还额外包含一个结束标志
'
'
'ASCII编码
'0
:结束符;const
对应数值为const int kCokePrice = 5; const int kPopcornPrice = 10;
的字符
- 在C++中,随着程序运算不改变的量叫做符号常量,可以使用
const
关键字来定义并且初始化:
int
int
是⼀个修饰符,加在数据类型int const kCokePrice = 5;
的前⾯,用来给这个变量加上一个不变的属性- 初始化时也可以将修饰符const与数据类型
- 实际编程过程中的名字最好简单易懂,用具有对应含义的英文或者拼音来表示 调换位置,写成
- 如果试图对常量做修改,例如把它放在赋值符号的左边,就会被编译器发现并指出错误
const 数据类型 常量名称 = 初始值;
数据类型 const 常量名称 = 初始值;
最后,总结一下符号常量的初始化伪代码:
int main() {
// 字面量
cout << 1 << " 是一个整型字面量" << endl;
cout << 0.5 << " 是一个浮点型字面量" << endl;
cout << 'a' << " 是一个字符型字面量" << endl;
cout << "这句话就是一个字符串型字面量\n" << endl;
// 定义符号常量表示可乐单价
const int kCokePrice = 5;
// 定义符号常量表示爆米花的单价
int const kPopcornPrice = 10;
// 将可乐与爆米花的单价分别打印在屏幕上,并且加上提示信息
cout << "CokePrice is: " << kCokePrice << endl;
cout << "PopcornPrice is: " << kPopcornPrice << endl;
return 0;
}
或者
🌰
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)