news 2026/4/18 0:20:49

C++ 从 0 入门(一)|C++ 基础语法、命名空间、引用、IO 输入输出

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++ 从 0 入门(一)|C++ 基础语法、命名空间、引用、IO 输入输出

大家好,我是网域小星球。

C++ 兼容 C 语言全部语法,同时扩展了面向对象、引用、泛型、内存管理等高级特性,也是 C++ 开发岗面试的核心考察内容。本篇从零过渡 C++ 基础,聚焦语法差异、高频考点、笔试题,所有代码 VS2022 直接运行。

目录

一、C++ 头文件与基础兼容

1. 标准头文件

2. 完全兼容 C

二、命名空间 namespace(必考)

1. 作用

2. 基础语法

三、C++ 输入输出 cin /cout

1. 输出 cout

四、引用 & (C++ 核心高频考点)

1. 引用概念

3. 引用三大规则(面试必背)

4. 函数引用传参(最高频)

五、C++ 变量增强定义

六、const 强化用法

七、本章总结

下期预告

一、C++ 头文件与基础兼容

1. 标准头文件

C++ 推荐使用无后缀头文件:

#include <iostream> // 标准输入输出

不再优先使用.h老式头文件。

2. 完全兼容 C

C 语言的语法、结构体、指针、数组、文件操作,全部可以直接在 C++ 运行


二、命名空间 namespace(必考)

1. 作用

解决全局命名冲突,不同库、相同变量名互不干扰。

2. 基础语法

namespace std { // 系统标准库内容 }

3. 三种使用方式

// 方式1:全程限定 std::cout << "hello"; // 方式2:全局展开(常用) using namespace std; // 方式3:单独引入 using std::cout;

完整示例

#include <iostream> using namespace std; int main() { cout << "C++ 命名空间" << endl; return 0; }

三、C++ 输入输出 cin /cout

替代 C 语言printf / scanf,自动识别类型,无需格式符。

1. 输出 cout

cout << 整数 << 字符串 << 变量 << endl;

2. 输入 cin

int a; cin >> a;

示例代码

#include <iostream> using namespace std; int main() { int a; double b; cout << "请输入整数:"; cin >> a; cout << "请输入小数:"; cin >> b; cout << "a = " << a << ", b = " << b << endl; return 0; }

面试考点:C 格式化输入输出不安全,C++ cin/cout 类型更安全,自动推导。


四、引用 & (C++ 核心高频考点)

1. 引用概念

引用 = 变量别名,引用和原变量共用同一块内存。

语法:

数据类型 &引用名 = 原变量;

2. 基础用法

int a = 10; int &b = a; // b 是 a 的别名 b = 20; // a 同步变成 20

3. 引用三大规则(面试必背)

  1. 引用必须初始化,不能单独定义;
  2. 引用不可更改指向,一生绑定一个变量;
  3. 没有空引用,不存在野引用。

4. 函数引用传参(最高频)

代替指针,减少拷贝、修改实参:

void swap(int &x, int &y) { int temp = x; x = y; y = temp; }

面试常问:引用和指针的区别?下篇专门精讲。


五、C++ 变量增强定义

C 语言要求变量必须写在函数开头;C++ 允许随时随地定义变量

for(int i = 0; i < 10; i++) { // 合法 }

六、const 强化用法

C++ 中const常量编译期确定,用法更严格:

const int N = 100;

可以当作常量直接使用,安全性高于 C 语言宏定义。


七、本章总结

  1. namespace解决命名冲突,std 是标准库命名空间;
  2. cin / cout替代格式化 IO,类型安全;
  3. 引用是变量别名,无内存开销,常用于函数传参;
  4. C++ 支持任意位置定义变量,语法更灵活;
  5. const 优化常量定义,替代部分宏。

    下期预告

    C++ 从 0 入门(二)|引用与指针区别、内联函数、函数重载(面试超高频)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 0:13:40

如何用GetQzonehistory一键备份QQ空间:免费开源工具完整备份教程

如何用GetQzonehistory一键备份QQ空间&#xff1a;免费开源工具完整备份教程 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否担心那些记录着青春回忆的QQ空间说说不小心丢失&…

作者头像 李华
网站建设 2026/4/18 0:13:35

异步爬虫 aiohttp:百万级数据高效采集方案

前言在当今数据驱动决策的时代&#xff0c;无论是企业数据分析、商业情报监测、行业研究还是个人项目开发&#xff0c;对数据量级的要求都在不断提升。从过去的万级、十万级数据采集&#xff0c;逐步过渡到如今百万级甚至千万级数据的常态化需求。传统的同步单线程爬虫&#xf…

作者头像 李华
网站建设 2026/4/18 0:08:58

暗黑3终极自动化指南:D3KeyHelper图形化宏工具完整配置教程

暗黑3终极自动化指南&#xff1a;D3KeyHelper图形化宏工具完整配置教程 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面&#xff0c;可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 暗黑破坏神3作为一款需要频繁…

作者头像 李华
网站建设 2026/4/18 0:07:01

Gemini 3 Flash:效率革命,如何重塑AI应用的“不可能三角”

1. 当AI遇上"不可能三角"&#xff1a;传统方案的困局 在AI应用开发领域&#xff0c;开发者们长期被一个魔咒般的"不可能三角"所困扰——任何模型都难以同时兼顾响应速度、计算成本和推理精度这三个核心指标。就像手机摄影中的"夜景模式"总要面临…

作者头像 李华