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

c++学习合集(2025-4-29)

数据输出

cout输出

#include <iostream>          // 引入标准输入输出流库(包含cout/cin等)
using namespace std;         // 使用标准命名空间(避免写std::cout)int main()                    // 程序入口函数(必须有且唯一)
{// 输出 "hello world" 并换行cout << "hello world" << endl;  // 原代码中的 end1 是拼写错误,endl 才是正确的换行操作符// endl = 换行 + 刷新输出缓冲区system("pause");           // 暂停控制台(Windows特有,防止窗口闪退)return 0;                 // 返回退出码0(表示程序正常结束)
}

 跟C语言一样都有一个框架;各个解释如上图;

以下是代码的逐行解释:

```cpp
#include <iostream>          // 引入标准输入输出流库(包含cout/cin等)
using namespace std;         // 使用标准命名空间(避免写std::cout)

int main()                    // 程序入口函数(必须有且唯一)
{
    // 输出 "hello world" 并换行
    cout << "hello world" << endl;  
    // 原代码中的 end1 是拼写错误,endl 才是正确的换行操作符
    // endl = 换行 + 刷新输出缓冲区

    system("pause");           // 暂停控制台(Windows特有,防止窗口闪退)
    return 0;                 // 返回退出码0(表示程序正常结束)
}
```

### 关键概念解析
1. **`#include <iostream>`**
   - 包含C++标准输入输出库,使`cout/cin`等可用
   - 类比:就像告诉编译器"我要用打印机,先接上电源"

2. **`using namespace std`**
   - 直接使用标准库中的名称(如`cout`代替`std::cout`)
   - 争议点:大型项目中可能污染命名空间,但小程序中方便

3. **`cout << ... << endl`**
   - `<<`:流插入运算符(数据流向控制台)
   - `endl`:换行+强制刷新缓冲区(比`\n`更彻底但稍慢)

4. **`system("pause")`**
   - 调用系统命令暂停程序(仅限Windows系统)
   - 替代方案:可用`cin.get()`实现跨平台暂停

### 常见问题
Q1: 为什么要用`return 0`?  
A1: 表示程序正常退出(非0值通常表示错误类型)

Q2: `endl`和`\n`的区别?  
A2: `\n`只换行不刷新缓冲区,`endl`会立即输出内容(性能敏感场景慎用)

Q3: 去掉`system("pause")`会怎样?  
A3: 在IDE中运行时窗口会立即关闭,看不到输出结果(命令行直接运行不受影响)

### 代码执行流程
编译 → 生成exe → 输出"hello world" → 暂停等待按键 → 结束

建议新手尝试:  
1. 去掉`system("pause")`观察现象  
2. 将`endl`改回`end1`看编译报错  
3. 添加新的`cout`语句输出其他内容

//----------------------------------------------------------------------------------------------------------------------//

插入流的理解(也就是那些小于号)

 在输出a=10之后,要是还想输出一个分号的话,那得再用插入流小于号括起来,然后把分号当字符输出;

插入流的用法是,相当于一个箭头,指向的就是要输出的内容

//----------------------------------------------------------------------------------------------------------------------//

数据输入

cin输入

相当于c语言的scanf;

具体格式如下:同时对插入流符号有了深理解,指向变量说明是输入,从变量指出,说明是输出

数据类型 

浮点型

float型:

double型:

科学计数法:

字符型 

转义字符

换行符

字符串 

两种风格

C语言:

C++:

两种都可以使用

布尔类型 

占一个字节的内存大小,他只能表示真假,true为真,本质为1,false为假,本质是0,这个数据类型跟51的bit很像,bit也是只能表示1和0;跟bit感觉没有两样,专门可以用来做标志位;实验得知你也可以对布尔数据赋值,赋值为不为1的数也是可以的,但是他也是只能存储为1,也就是为真,

相关文章:

  • 基于Anaconda的Pycharm环境配置
  • 使用图像生成式AI和主题社区网站助力运动和时尚品牌的新产品设计和市场推广的点子和实现
  • 20250506让NanoPi NEO core开发板使用Ubuntu core16.04系统的TF卡启动
  • 中达瑞和便携式高光谱相机:珠宝鉴定领域的“光谱之眼”
  • 车载通信网络安全:挑战与解决方案
  • 【表设计】外键的取舍-分布式中逐渐消失的外键
  • 【十五】Mybatis动态SQL实现原理
  • 在Unity AR应用中实现摄像头切换功能
  • 2025年服务器技术全景解析:量子计算、液冷革命与未来生态构建
  • 基于图像处理的道路监控与路面障碍检测系统设计与实现 (源码+定制+开发) 图像处理 计算机视觉 道路监控系统 视频帧分析 道路安全监控 城市道路管理
  • HTTP请求与前端资源未优化的系统性风险与高性能优化方案
  • Java高频面试之并发编程-12
  • 论文速读:《CoM:从多模态人类视频中学习机器人操作,助力视觉语言模型推理与执行》
  • element-ui日期时间选择器禁止输入日期
  • css filter 常用方法函数和应用实例
  • Android SDK 国内镜像及配置方法(2025最新,包好使!)
  • vue3+ts继续学习
  • 【自然语言处理与大模型】LlamaIndex的词嵌入模型和向量数据库
  • laravel 12 监听syslog消息,并将消息格式化后存入mongodb
  • CVE-2025-24813:Apache Tomcat RCE 漏洞分析
  • 巴基斯坦军方:印度导弹袭击已造成至少3死14伤
  • 预告:央行等部门将发声,介绍“一揽子金融政策支持稳市场稳预期”有关情况
  • 从陈毅杯到小应氏杯,五一长假上海掀起围棋热
  • 今晚上海地铁多条线路加开定点加班车,2号线运营至次日2时
  • 特朗普要征100%关税,好莱坞这批境外摄制新片有麻烦了
  • 贵州黔西市游船倾覆事故最后一名失联人员被找到,但已无生命体征