注:仅补充与C语言不同的基础知识(或一些自己没注意的点)
#include
using namespace std;
int main()
{
system("pause");
return 0;
}
#include < iostream >:
在新标准中,⽤#include< iostream>。iostream 的意思是输⼊输出流。#include< iostream>是标准的C++头⽂件,任何符合标准的环境都有这个头⽂件。(#include是在旧的标准C++中使⽤。)
using namespace std: namespace是指标识符的各种可见范围。命名空间用关键字namespace 来定义。命名空间是C++的一种机制,用来把单个标识符下的大量有逻辑联系的程序实体组合到一起。此标识符作为此组群的名字。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。
system(“pause”): 黑窗口中任意按键继续
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++的关键字,否则会产生歧义。
作用:C++规定给标识符(变量、常量)命名时,有一套自己的规则
建议:给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读
C++风格字符串: string 变量名 = "字符串值"
示例:
int main()
{
string str = "hello world";
cout << str << endl;//输出字符串
system("pause");
return 0;
}
注意:C++风格字符串,需要加入头文件
#include< string >
作用:布尔数据类型代表真或假的值
bool类型只有两个值:
bool类型占1个字节大小
示例:
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;
}
作用:用于从键盘获取数据
关键字:cin
语法: cin >> 变量
示例:
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;
}
作用:用于从屏幕显示数据
语法:cout<<内容或数据 <
示例:
//一些与C不同的用法
int main()
{
int a = 7;
cout << "Hello world!";//无换行
cout << "***" << endl;
cout << "一周有" << a << "天" << endl;
cout<<endl;//换行
system("pause");
return 0;
}
int a = 4;
int b = 5;
(a > b ? a : b) = 9;//返回的是变量可以需要进行赋值
cout << b;
const修饰指针有三种情况
示例:
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右侧紧跟着的是指针还是常量, 是指针就是常量指针,是常量就是指针常量
总结1:定义结构体时的关键字是struct,不可省略
总结2:创建结构体变量时,关键字struct可以省略
总结3:结构体变量利用操作符 ‘’.‘’ 访问成员
作用: 最常用的排序算法,对数组内元素进行排序
示例: 将数组 { 4,2,8,0,5,7,1,3,9 } 进行升序排序
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;
}