目录
- 一般C++语法模板
- 1.关键词
- [2. 标识符命名规则](#2. 标识符命名规则)
- 3.一些不同类型
-
- 3.1字符串
- [3.2布尔类型 bool](#3.2布尔类型 bool)
- [4. 数据的输入输出](#4. 数据的输入输出)
-
- [4. 1数据的输入](#4. 1数据的输入)
- [4. 2数据的输出](#4. 2数据的输出)
- 5.运算符
- 6.constant修饰指针
- 7.结构体
- 8.冒泡排序---C++
注:仅补充与C语言不同的基础知识(或一些自己没注意的点)
一般C++语法模板
cpp
#include <iostream>
using namespace std;
int main()
{
system("pause");
return 0;
}
#include < iostream >:
在新标准中,⽤#include< iostream>。iostream 的意思是输⼊输出流。#include< iostream>是标准的C++头⽂件,任何符合标准的环境都有这个头⽂件。(#include<iostream.h>是在旧的标准C++中使⽤。)
using namespace std: namespace是指标识符的各种可见范围。命名空间用关键字namespace 来定义。命名空间是C++的一种机制,用来把单个标识符下的大量有逻辑联系的程序实体组合到一起。此标识符作为此组群的名字。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。
system("pause"): 黑窗口中任意按键继续
1.关键词
asm | do | if | return | typedef |
---|---|---|---|---|
auto | double | inline | short | typeid |
bool | dynamic_cast | int | signed | typename |
break | else | long | sizeof | union |
case | enum | mutable | static | unsigned |
catch | explicit | namespace | static_cast | using |
char | export | new | struct | virtual |
class | extern | operator | switch | void |
const | false | private | template | volatile |
const_cast | float | protected | this | wchar_t |
continue | for | public | throw | while |
default | friend | register | true | |
delete | goto | reinterpret_cast | try |
提示:在给变量或者常量起名称时候,不要用C++的关键字,否则会产生歧义。
2. 标识符命名规则
作用:C++规定给标识符(变量、常量)命名时,有一套自己的规则
- 标识符不能是关键字
- 标识符只能由字母、数字、下划线组成
- 第一个字符必须为字母或下划线
- 标识符中字母区分大小写
建议:给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读
3.一些不同类型
3.1字符串
C++风格字符串 : string 变量名 = "字符串值"
示例:
cpp
int main()
{
string str = "hello world";
cout << str << endl;//输出字符串
system("pause");
return 0;
}
注意:C++风格字符串,需要加入头文件
#include< string >
3.2布尔类型 bool
作用:布尔数据类型代表真或假的值
bool类型只有两个值:
- true --- 真(本质是1)
- false --- 假(本质是0)
bool类型占1个字节大小
示例:
cpp
int main() {
bool flag = true;
cout << flag << endl; // 1
flag = false;
cout << flag << endl; // 0
cout << "size of bool = " << sizeof(bool) << endl; //1
system("pause");
return 0;
}
4. 数据的输入输出
4. 1数据的输入
作用:用于从键盘获取数据
关键字:cin
语法: cin >> 变量
示例:
cpp
int main(){
//整型输入
int a = 0;
cout << "请输入整型变量:" << endl;
cin >> a;
cout << a << endl;
//浮点型输入
double d = 0;
cout << "请输入浮点型变量:" << endl;
cin >> d;
cout << d << endl;
//字符型输入
char ch = 0;
cout << "请输入字符型变量:" << endl;
cin >> ch;
cout << ch << endl;
//字符串型输入
string str;
cout << "请输入字符串型变量:" << endl;
cin >> str;
cout << str << endl;
//布尔类型输入
bool flag = true;
cout << "请输入布尔型变量:" << endl;
cin >> flag;
cout << flag << endl;
system("pause");
return EXIT_SUCCESS;
}
4. 2数据的输出
作用:用于从屏幕显示数据
语法: cout<<内容或数据 <<endl;
示例:
cpp
//一些与C不同的用法
int main()
{
int a = 7;
cout << "Hello world!";//无换行
cout << "***" << endl;
cout << "一周有" << a << "天" << endl;
cout<<endl;//换行
system("pause");
return 0;
}
5.运算符
5.1三目运算符
cpp
int a = 4;
int b = 5;
(a > b ? a : b) = 9;//返回的是变量可以需要进行赋值
cout << b;
6.constant修饰指针
const修饰指针有三种情况
- const修饰指针 --- 常量指针
- const修饰常量 --- 指针常量
- const即修饰指针,又修饰常量
示例:
cpp
int main()
{
int a = 10;
int b = 10;
//const修饰的是指针,指针指向可以改,指针指向的值不可以更改
const int * p1 = &a;
p1 = &b; //正确
//*p1 = 100; 报错
//const修饰的是常量,指针指向不可以改,指针指向的值可以更改
int * const p2 = &a;
//p2 = &b; //错误
*p2 = 100; //正确
//const既修饰指针又修饰常量
const int * const p3 = &a;
//p3 = &b; //错误
//*p3 = 100; //错误
system("pause");
return 0;
}
技巧:看const右侧紧跟着的是指针还是常量, 是指针就是常量指针,是常量就是指针常量
7.结构体
总结1:定义结构体时的关键字是struct,不可省略
总结2:创建结构体变量时,关键字struct可以省略
总结3:结构体变量利用操作符 ''.'' 访问成员
8.冒泡排序---C++
作用: 最常用的排序算法,对数组内元素进行排序
- 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
- 对每一对相邻元素做同样的工作,执行完毕后,找到第一个最大值。
- 重复以上的步骤,每次比较次数-1,直到不需要比较
示例: 将数组 { 4,2,8,0,5,7,1,3,9 } 进行升序排序
cpp
int main()
{
int arr[9] = { 4,2,8,0,5,7,1,3,9 };
for (int i = 0; i < 9 - 1; i++)
{
for (int j = 0; j < 9 - 1 - i; j++)
{
if (arr[j] > arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
for (int i = 0; i < 9; i++)
{
cout << arr[i] << endl;
}
system("pause");
return 0;
}