C++基础分类
- 注释、变量、常量、关键字、修饰符…
- 数据类型:布尔、整型、字符型、浮点型、无类型…
- 运算符:算数、关系、逻辑、位、赋值…
- 程序流程结构:选择、循环、跳转
- 数组
- 函数
- 指针
- 结构体
要点散装
- 单句注释
//
,多句注释/*...*/
//大段注释可条件
if(0) {
...
}
-
“请按任意键继续. . .”,
system("pause");
-
头文件要知道
#include <iostream>
#include <cstdlib> //不加头文件,system会报错!
#include <iomanip>
#include <ctime>
- 标识符命名规则要知道
标识符命名规则:
1.只能有数字、字母、下划线组成;
2.首位只能 是字母或下划线;
3.区分大小写;
4.标识符不能是关键字,如int
- 数据类型内存大小
//整型:short int long(4) long long(8)
//利用sizeof求处数据类型占用内存大小
cout << "占用内存大小 =" << sizeof(short) << endl;
- 枚举类型
#include <iostream>
using namespace std;
int main() {
enum color {red, green = 5, blue} c; //red = 0;green = 5;blue = 6;
c = blue;
cout << c << endl;
return 0;
}
- 浮点数
float f1 = 3.14f; //数字后不加f会导致程序多一步
- 布尔
bool
只有true
和false
- C++定义字符串
//记得头文件<cstring>
string str2 = "hello world";
cout << str2 << endl;
- 前置递增与递减,后置递增与递减
//前置和后置的区别
//前置递增 先让变量+1 然后进行表达式运算
//后置递增,先进行表达式运算,后让变量+1
- 随机数调用
#include <ctime> //调用时间函数 time()
#include <iomanip> //调用函数 setw()设置字符宽度
//随机数种子
srand((unsigned int)time(NULL));
b = rand()%100 +1; //0~100
cout << "Element" << setw(13) << "Value" << endl; //xxxxxxxValue
- 函数指针返回
// 要生成和返回随机数的函数
int *getRandom( )
{
static int r[10]; //C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static 变量。
// 设置种子
srand( (unsigned)time( NULL ) );
for (int i = 0; i < 10; ++i)
{
r[i] = rand();
cout << r[i] << endl;
}
return r;
}
- 两数交换,临时变量好
//不使用临时变量交换
void swap1(int a, int b){
a = a + b;
b = a - b;
a = a - b;
return;
}
//临时变量法编译出的汇编代码量最少即效率更高,加减法和异或方法的区别仅仅是计算方式不同而已,操作步骤是一致的。
void swap2(int a,int b) {
int temp = a;
a = b;
b = temp;
}
- 数组内数依次调用
int my_array[5] = {1, 2, 3, 4, 5};
// 每个数组元素乘以2
for(auto &x : my_array)
{
x *= 2;
cout << x << endl;
}
- 质数(素数)搜寻法
#include <iostream>
using namespace std;
//搜寻质数,又称素数,大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
int main() {
int i, j;
for(i = 2;i <= 100;i++) {
for(j = 2;j <= i/j;j++) {
if(!(i%j)) {
break;
}
}
if(j > i/j) {
cout << i << "是质数" << endl;
}
}
return 0;
}
- 输出带颜色的文本
#include <iostream>
#include <string>
using namespace std;
void printcolor(string color, string str)
{
int clr;
string head;
string tail;
string display;
if(color=="red") clr=1;
if(color=="green") clr=2;
switch(clr){
case 1:{
head="\033[31m";
tail="\033[0m";
display=head+str+tail;
break;
}
case 2:{
head="\033[32m";
tail="\033[0m";
display=head+str+tail;
break;
}
default:{
display=str;
break;
}
}
cout << display << endl;
}
int main ()
{
printcolor("red", "helloworld!");
printcolor("green", "helloworld!");
return 0;
}
- 指针作形参
//传递数组给函数
//求平均值
double array(double *point, int size) {
double *p;
double sum;
p = point;
for(int i = 0;i < size; i++) {
sum += *(p+i);
}
double avg;
avg = sum/size;
return avg;
}
小伙伴们点赞👍、收藏⭐、评论💬,一键三连❤️走起呀,我是路边小M,一直更新补充中~~