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

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

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

目录

[一、C++ 头文件与基础兼容](#一、C++ 头文件与基础兼容)

[1. 标准头文件](#1. 标准头文件)

[2. 完全兼容 C](#2. 完全兼容 C)

[二、命名空间 namespace(必考)](#二、命名空间 namespace(必考))

[1. 作用](#1. 作用)

[2. 基础语法](#2. 基础语法)

[三、C++ 输入输出 cin /cout](#三、C++ 输入输出 cin /cout)

[1. 输出 cout](#1. 输出 cout)

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

[1. 引用概念](#1. 引用概念)

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

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

[五、C++ 变量增强定义](#五、C++ 变量增强定义)

[六、const 强化用法](#六、const 强化用法)

七、本章总结

下期预告

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

1. 标准头文件

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

cpp 复制代码
#include <iostream>   // 标准输入输出

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

2. 完全兼容 C

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


二、命名空间 namespace(必考)

1. 作用

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

2. 基础语法

cpp 复制代码
namespace std
{
    // 系统标准库内容
}
  1. 三种使用方式
cpp 复制代码
// 方式1:全程限定
std::cout << "hello";

// 方式2:全局展开(常用)
using namespace std;

// 方式3:单独引入
using std::cout;

完整示例

cpp 复制代码
#include <iostream>
using namespace std;

int main()
{
    cout << "C++ 命名空间" << endl;
    return 0;
}

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

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

1. 输出 cout

cpp 复制代码
cout << 整数 << 字符串 << 变量 << endl;
  1. 输入 cin
cpp 复制代码
int a;
cin >> a;

示例代码

cpp 复制代码
#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. 引用概念

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

语法:

cpp 复制代码
数据类型 &引用名 = 原变量;
  1. 基础用法
cpp 复制代码
int a = 10;
int &b = a;   // b 是 a 的别名

b = 20;
// a 同步变成 20

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

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

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

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

cpp 复制代码
void swap(int &x, int &y)
{
    int temp = x;
    x = y;
    y = temp;
}

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


五、C++ 变量增强定义

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

cpp 复制代码
for(int i = 0; i < 10; i++)
{
    // 合法
}

六、const 强化用法

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

cpp 复制代码
const int N = 100;

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


七、本章总结

  1. namespace 解决命名冲突,std 是标准库命名空间;

  2. cin / cout 替代格式化 IO,类型安全;

  3. 引用是变量别名,无内存开销,常用于函数传参;

  4. C++ 支持任意位置定义变量,语法更灵活;

  5. const 优化常量定义,替代部分宏。

    下期预告

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

相关推荐
雾岛听蓝2 小时前
Qt按钮与标签控件详解
开发语言·经验分享·笔记·qt
黑牛儿2 小时前
AI Agent\+PHP实现智能接口限流,避开算力成本陷阱(结合今日AI热点)
开发语言·人工智能·php
XMYX-02 小时前
15 - Go 泛型(Generics):从入门到实战
开发语言·golang
Halo_tjn2 小时前
Java 内部类
java·开发语言·算法
碎碎念的安静2 小时前
WPF 与 Qt 进程间通信(IPC)
开发语言·qt·wpf
旖-旎2 小时前
栈(验证栈序列)(5)
c++·算法·leetcode·力扣·
boonya2 小时前
Spring AI 深度实践教程:从“能用”到“用好”
开发语言·python
(Charon)2 小时前
【Qt/C++】Qt/C++ 中 :: 和 . 到底有什么区别?
开发语言·c++·qt
REDcker2 小时前
C++跨平台与跨语言绑定工具:SWIG、Djinni 等选型
开发语言·c++