C++介绍
-
基于C语言,继承了C的所有语法;
-
静态类型语言,需要先编译,再执行;
-
贴近底层硬件,运行速度快;
-
支持面向对象、面向泛型,增强版的C;
-
应用领域
-
编译(Compile),编译器 将整个源代码翻译成机器码(二进制文件),一次性交给计算机执行,如C/C++;
-
解释(Interpret),由解释器将代码逐行解释为机器码,交给计算机执行,如 python/js ;
-
c++的运行
-
版本C++ 98、C++ 11、 C++ 14、 C++ 17、C++ 20
环境配置
集成开发环境Visual Studio ,编辑、编译;
下载地址
工具 -> 选项 可调整字体等
项目上右键 -> 设为启动项目,做项目切换;
Ctrl + k, c 注释;
Ctrl + k, u 取消注释;
第一个cpp程序
#include <iostream> // 包含头文件
using namespace std; // 使用std 命名空间
/*多行注释
int, 返回值类型
main,主函数
arr, 形式参数
{}, 函数体
*/
int main(char* arr[]) {
// cout 输出 cin >> 变量 输入
// << 流输出运算符
// endl 结束一行
cout << "Hello jack" << endl; // 必须分号结束
// 系统调用
system("pause"); // 暂停
return 0;
}
选中源码-右键-编译,可以生成.obj目标文件;
选中项目-右键-生成(build),可以生成exe文件;
查看路径如下:
案例练习
- 基于函数封装实现功能;
- 输入用户名,输出欢迎信息;
#include <iostream> // 包含头文件
using namespace std; // 使用std 命名空间
// 函数封装 void 表示 函数没有返回值
void welcomeUser() {
cout << "请输入用户名:" << endl;
// C++ 支持字符串类型 而C不支持
string name;
// 输入
cin >> name;
// 输出欢迎信息
cout << "Welcome " << name << endl;
}
int main(char* arr[]) {
// 调用函数
welcomeUser();
// 系统调用
system("pause"); // 暂停
return 0;
}
也可以将该函数定义在另一个源文件中,本源文件内仅仅声明即可使用。声明如void welcomeUser(); 是没有函数体的;编译器会自动查找。
变量
- 声明变量,即分配内存;
- 命名以字母、数字、下划线,不以数字开头;
- 在代码块{ }内部的变量为局部变量;在所有{}外的变量为全局变量;
- 局部变量必须先初始化赋值,才可以使用;而全局变量默认初始化;
- 代码块内部,优先查找(作用域最小的)局部变量,使用 :: + 变量 访问全局变量;
#include <iostream> // 包含头文件
using namespace std; // 使用std 命名空间
// 定义枚举类型
enum Sex
{
MALE, // 默认从0开始
FEMALE
};
int main(char* arr[]) {
// 整型定义
int age; // 变量的声明
age = 23; // 初始化赋值
// double
double score = 79.534; // 声明并赋值 为变量定义
float scoreF = 60.8f;
// 字符串定义
string name = "jack";
string fullName = name + "li"; // 字符串的拼接
// 布尔
bool isGood = false;
// 枚举
enum Sex sex = MALE; // 定义 并赋值
// 输出
cout << "姓名:" << name << endl;
cout << "全名:" << fullName << endl;
cout << "性别:" << sex << endl;
cout << "年龄:" << age << endl;
cout << "分数:" << score << endl;
cout << "是否好学生:" << isGood << endl;
// 系统调用
system("pause"); // 暂停
return 0;
}
- 变量基本类型
- int ,整型
- float,单精度浮点型
- double 小数默认为double,双精度;
- string,字符串
- bool,true/false
- char, 字符类型 单引号+单字符;
- 自定义类型
- enum,枚举
- struct,结构体
- union,共用体