一、开发环境
c++使用的编译器是g++。
- vim或者vscode
- clion
- VS
二、C++版本的Hello World
/**
* @brief c++版本helloworld示例
* @author Mculover666
* @date 2023/2/26
*/
#include <iostream>
using namespace std;
int main()
{
int a = 1;
double b = 3.14;
char c[] = "str test";
bool flag = false;
//常量字符串直接输出
cout << "Hello World!" << endl;
//变量值打印
cout << "a = " << a << endl;
cout << "b = " << b << endl;
//拼接打印
cout << "c = [" << c << "]" << endl;
//逻辑值判断
if (flag)
cout << "yes" << endl;
else
cout << "no" << endl;
return 0;
}
三、区别之处
1. 头文件
c++中库的头文件使用不需要带.h
,只需要头文件名即可。
2. 命名空间
命名空间是c++中接触第一个比较新的概念,可以理解为java中的包,后面再深入学习。
3. 输出
cout是命名空间std中提供的方法,可以打印输出到控制台,也可以通过std::cout
直接使用。
endl是命名空间std中提供的换行符,用于换行,也可以通过在字符串之后添加"\n"换行。
4. 输入
cin是命名空间std中提供给的方法,用于从控制台获取用户输入。
5. bool类型
c++中提供布尔类型bool,值是true和false,本质上true还是1、false还是0,但是有以下两个优点:
- 相对于c语言中使用零和非零表示逻辑值,可读性更高
- 相对于c语言中使用int来存储标志位,bool类型只占用一个字节
6. 字符串类型
c++支持使用字符数组来存储字符串:
char text[] = "text1";
c++提供了string类型来创建字符串对象,不用理解,等到掌握类和对象的知识后再了解:
string text = "text1";
string类型在头文件<string.h>
中提供,所以使用时需要包含:
#include <string>
这两种方式下,第一个text是字符数组,第二个text是一个string类型的对象,都是用来存储字符串内容,但两个是完全不一样的东西,不要混淆。
四、相同之处
- 基本数据类型
- 复合数据类型(枚举、结构体、共用体)
- 分支结构(if、while、for、switch、break、continue)
- 指针
- 数组
除了第三节提到的区别之外,这些c语言基础知识可直接使用。
五、c++关键字
c++用到的关键字如下,了解一下即可。
六、c++编译器检查
c++比c更加的语法灵活,没有强语法检查限制,在入门阶段建议带上参数-Werror
,开启最高级别的编译器语法检查,将警告直接转换为错误。
g++ -Werror
文章完成于2023.2.26 22:27,耗时1h。