01-C++ 基础概念
1. C++ 欢迎你
1.1 欢迎学习 C++
你好,我是悦创。
C++是一种流行的跨平台语言,可用于创建高性能应用程序--操作系统、浏览器、网络游戏、炫酷的桌面应用等。
注意
C++ 是由 C 语言衍生出来的,且主要是基于 C 语言。
Q1: C++ 编程语言是?
一个 C++ 程序是一组命令或语句的集合。
下面是一个简单的程序示例:
#include "iostream"
//#include <iostream>
using namespace std; // 使用 std 命名空间
int main() {
return 0;
}
你将在接下来的课程中学习了解每个语句的作用。 现在,请记住,每个 C++ 程序的入口都是 main()
函数,不管程序做什么。
注意
大括号{ }
表示一个函数的开始和结束,也可以称为函数的主体。大括号内的代码在讲该函数调用时被执行。
Q2: 以下哪一项是 C++ 程序的执行入口?
1.2 第一个 C++ 程序
让我们向屏幕输出 "Hello world!
"!
要做到这一点,只需在 main()
函数主体中添加一行 cout << "Hello world!";
即可。
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!";
cout << " This " << "is " << "awesome!";
return 0;
}
// 引入 iostream 库,这个库提供了输入输出功能
#include <iostream>
// 使用 C++ 标准库的命名空间,这样可以避免在每次使用标准库中的类或函数时都要加上 std:: 前缀
using namespace std;
// 主函数,程序的执行从这里开始
int main()
{
// 输出字符串"Hello world!"到控制台
cout << "Hello world!";
// 输出字符串"This is awesome!"到控制台
// 这里使用了多次插入操作符(<<),将多个字符串连续输出
cout << " This " << "is " << "awesome!";
// 返回0,表示程序执行成功
return 0;
}
cout 用于在标准输出设备上进行输出,该设备通常是显示屏幕。
cout 与插入操作符 <<
结合使用。
注意,你可以在 cout 后面添加多个插入操作符 <<
。
注意
在 C++ 中,分号 ;
用于终止一个语句。每个语句必须以分号 ;
结束。它表示一个逻辑表达式的结束。
1.2 行胜于言,来挑战吧!
写一个程序来打印 "C++ is cool"。
注意,字母 C
是大写字母。
注意
- 使用
cout<<
输出文本。 - 记住将文本前后需要加双引号
"
,并用分号;
结束语句。
#include <iostream>
using namespace std;
int main() {
//打印 "C++ is cool"
return 0;
}
#include <iostream>
using namespace std;
int main() {
//打印 "C++ is cool"
cout << "C++ is cool";
return 0;
}
Q3: 每条语句必须以什么结尾?
A. 点号 ( .
)
B. 冒号 ( :
)
C. 逗号 ( ,
)
D. 分号 ( ;
)
2. 头文件及命名空间
2.1 头文件
C++ 提供了各种头文件,每个头文件都包含程序正常工作所需的基本功能。
我们已经在第一个 C++ 程序上看到了输入输出处理相关 <iostream>
头文件。
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!";
return 0;
}
#include
用于在程序中添加标准或用户自定义的头文件。
注意
<iostream>
头文件定义了输入和输出数据的标准流对象。
2.2 探究 C++ 头文件
- 打开 Terminal;
- 使用
cd
命令切换到你的源代码所在的目录; - 使用
clang++
命令来预处理你的源代码。例如,如果你的源代码文件名是main.cpp
,你可以使用以下命令进行预处理:
clang++ -E main.cpp > test.i
// clang++ 编译 main.cpp 代码,保存到 test.i
// Windows 使用 cpp 代替 clang++
-E
参数会让 clang 只预处理源代码,并把结果输出到test.i
文件中。
这条命令会使用 clang++
预处理 main.cpp
文件,并将结果输出到 test.i
文件。
提示
尖括号告诉编译器去系统库查找头文件,而双引号则会让编译器先在当前目录下查找。对于标准库头文件,应使用尖括号。
这个时候,你可以观察到,生成的文件末尾就是我们的代码,前面就是 #include <iostream>
所导入的代码。
2.3 命名空间
命名空间是一个声明性区域,为内部的标识符(如变量名)提供一个可见范围。
在我们的代码中,using namespace std;
这一行告诉编译器使用 std(标准)命名空间。
#include <iostream>
using namespace std;
int main() {
cout << "Hello world!";
return 0;
}
注意
std 命名空间包括 C++ 标准库 的基本功能。
3. 换行输出
3.1 打印换行
cout 对象不会在输出的最后插入换行符。
打印换行的方法之一是使用 endl 操控器(manipulator),它将插入一个换行符。
#include <iostream>
using namespace std;
int main() {
// endl 换行了
cout << "Hello world!" << endl;
cout << "I love programming!";
return 0;
}
3.2 换行符
换行符 \n
可以作为 endl 的替代。
根据程序需要,在单个 cout 语句中可添加任意多个 \n
从而打印出多行文本。
例子:
#include <iostream>
using namespace std;
int main() {
// 直接用\n 表示换行
cout << "Hello world! \n";
cout << "I love programming!";
return 0;
}
注意
反斜线 \
称为转义字符,表示一个 "特殊 "字符。
3.3 换行打印
给定的程序输出 "C++"。
请改变代码,在新的一行输出每个字符。
示例输入
示例输出
C
+
+
公众号:AI悦创【二维码】

AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Linux、Web全栈」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh
