当前位置: 首页 > news >正文

C++基础学习笔记

文章目录

  • 1. 基本数据类型
  • 2. 变量和常量
  • 3. 标识符和关键字
  • 4. switch语句
  • 5. 跳转语句 goto
  • 6. 引用
  • 7. 数组
  • 8. 命名空间
  • 9. 类
  • 10. 函数分文件定定义
  • 10. 指针
  • 11. 结构体

最好有一定C语言基础,仅仅记录小编一些忘记的知识点或没有学习到的知识点

1. 基本数据类型

整形数据类型包括short、int、long、long long,它们的大小分别为2、4、4、8字节;浮点型类型有float、double,它们的大小分别为4、8字节(区别在于小数点后精确点的个数);字符型只有char,大小为1字节;布尔类型只有bool,大小为1字节。

2. 变量和常量

变量的定义为在程序能够变化的一个量;

#include <iostream>
using namespace std;int main() {int a;a = 10;cout << a << endl;a = 20;cout << a << endl;system("pause");return 0;
}

常量的定义为在程序中不可以变化的量,并且初始化的时候必须赋值。下述代码语句会报错或者说通不过编译。
在这里插入图片描述

3. 标识符和关键字

标识符只能由字母、数字、下划线、美元符号组成,且不能以数字开头,另外不能和关键字(比如if、while等)相同。常用的关键词如下:
在这里插入图片描述

4. switch语句

代码如下:

#include <iostream>
using namespace std;int main() {int a;cout <<"输入成绩:"<<endl;cin >> a;switch (a/10) {case 10:case 9:cout << "优秀。。" << endl;break;case 8:cout << "良好。。" << endl;break;case 7:case 6:cout << "及格。。" << endl;break;default:cout << "不及格。。" << endl;}system("pause");return 0;
}

5. 跳转语句 goto

在这里插入图片描述

6. 引用

用来定义别名,用于指向一个已经存在的变量或对象。引用定义只能在声明时进行初始化,也就是引用必须被初始化为某个对象或者变量的别名。

定义:
引用类型的标识符 &别名 = 变量名

参考代码如下:

#include <iostream>
using namespace std;int main() {int a = 10;int& b = a;b = 20;cout << a << endl;system("pause");return 0;
}

在这里插入图片描述

7. 数组

int arr[10];
cout << arr[9] << endl;
// 没有赋值,打印的结果为未知数
int arr2[10] = {0};
cout << arr2[9] << endl;
// 打印0,因为对数组arr2已经赋值,虽然只赋值了arr[0],但是其他9个元素值默认为0了。

8. 命名空间

#include <iostream>
using namespace std;namespace LIUZE
{int age = 20;void fun() {cout << "age=" << age << endl;}namespace PLAY{void fun() {cout << "play" << endl;}}
}int main() {LIUZE::fun();LIUZE::PLAY::fun();system("pause");return 0;
}

9. 类

class Student
{
private:int age;
public:char name[20];int id;void setAge(int age1){age = age1;}int getAge(){return age;}void play(){cout << "play game" << endl;}
};int main() {Student s;strcpy(s.name, "张三");cout << s.name << endl;s.setAge(23);cout << s.getAge() << endl;system("pause");return 0;
}

10. 函数分文件定定义

  1. 创建 .h 的后缀名的头文件
  2. 创建 .cpp 的后缀名的源文件
  3. 在头文件中写函数的声明
  4. 在源文件中写函数的定义

如下:
在这里插入图片描述
abc.h

#include <iostream>
using namespace std;void print(int);

abc.cpp

#include "abc.h"void print(int a) 
{cout << "a=" << a << endl;
}

10. 指针

指针的大小,在32位操作系统下,指针的大小为4个字节;在64位操作系统下,指针的大小为8个字节。任何类型的指针大小都一致。
在这里插入图片描述
const修饰的指针:指针的指向可以修改,但是指针指向的值不可以修改。
在这里插入图片描述
指针常量:指针的指向不可以修改,但是指针指向的值可以修改。
在这里插入图片描述
const修饰的指针常量:指针的指向不可以修改,且指针指向的值也不可以修改。
在这里插入图片描述

11. 结构体

#include <iostream>
#include <string>
using namespace std;struct Student 
{int age;string name;
};int main() 
{	Student a;a.name = "张三";a.age = 20;cout << "age:" << a.name << "age:" << a.age << endl;system("pause");return 0;
}

在C++中初始化结构体中可以省略struct关键字,但是定义结构体时关键字struct不可以省略,在C语言中会使用typedef关键字,从而避免每次初始化结构体时都需要使用到struct关键字。
结构体数组初始化如下:

int main() 
{	Student arr[2] = {{18,"张三"},{20,"李四"}};for (int i = 0; i < 2; i++){cout << "age=" << arr[i].age<< " name=" << arr[i].name << endl;}system("pause");return 0;
}

结构体指针,需要用到箭头访问结构体中的变量,当然也可以使用传统方式访问结构体中的变量,如下:

int main() 
{	Student a = { 18,"张三" };Student* p = &a;cout << (*p).name << endl;cout << p->name << endl;system("pause");return 0;
}
http://www.dtcms.com/a/321315.html

相关文章:

  • 如何在simulink中双击一个模块弹出一个exe?
  • SCI论文润色一站式服务
  • 机器学习模型在订单簿大单预测与应对
  • 线程池分析与设计
  • 【设计模式】访问者模式模式
  • Claude Code 实战场景解析:从代码生成到系统重构的典型应用案例
  • 修复C++14兼容性问题 逻辑检查
  • 控制建模matlab练习11:伯德图
  • 数据大集网:重构企业贷获客生态的线上获客新范式​
  • C++信息学奥赛一本通-第一部分-基础一-第2章-第5节
  • 亚马逊 Alexa + 广告整合:智能语音交互重构电商营销范式
  • AI日报 - 2025年08月08日
  • [科普] AI加速器架构全景图:从GPU到光计算的算力革命
  • vue3 map和filter功能 用法
  • 仅需8W,无人机巡检系统落地 AI 低空智慧城市!可源码交付
  • 远期(Forward)交易系统全球金融市场解决方案报告
  • 智能体协同作战:实现工具调用成功率提升47%的架构奥秘
  • 支付宝「安全发-甲方直发」架构详解及与「安全发ISV模式」对比
  • Python训练营打卡Day26-函数专题2:装饰器
  • 可信数据空间(Trusted Data Space)的技术架构概述
  • matplotlib库和seaborn库
  • 深度学习调参技巧总结
  • 5 种简单方法将 Safari 书签转移到新 iPhone
  • 商品期货场外期权系统解决方案:跨境金融科技赋能大宗商品风险管理
  • duxapp 2025-05-29 更新 兼容鸿蒙C-API方案,现在鸿蒙端可以用于生产
  • 中小业务遭遇网络攻击,防护能力不足的解决办法​
  • 滑动窗口与双指针训练
  • 机器学习概念2
  • 数据库冗余设计:平衡性能与一致性的艺术
  • 机器学习-Logistic Regression