鱼C论坛

 找回密码
 立即注册
查看: 186|回复: 2

[已解决]C和C++

[复制链接]
头像被屏蔽
发表于 2025-3-29 17:03:26 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2025-3-30 00:10:08 | 显示全部楼层    本楼为最佳答案   
可以理解为 c++ 包含 c
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-4-2 20:28:41 | 显示全部楼层
C和C++的区别与关系

  • 关系
    C++是基于C扩展的编程语言,最初被称为“带类的C”。C++完全兼容C语法(但部分C99特性需要调整),可以认为C是C++的子集。不过现代C++更强调面向对象和泛型编程范式。
  • 核心区别
    • 编程范式
      C是纯过程式语言,C++支持面向对象(类、继承、多态)和泛型编程(模板)
    • 特性差异
      C++独有的:异常处理函数重载运算符重载命名空间STL库
    • 内存管理
      C使用:malloc/free
      C++推荐使用:new/delete 以及智能指针
    • 标准库
      C:标准库如 stdio.hstdlib.h
      C++:包含C库(如 cstdio)并扩展了STL容器、算法等
    • 输入输出
      C:printf/scanf
      C++:std::cin/cout
    • 默认类型安全
      C的类型转换更宽松,C++要求显式类型转换(如 static_cast<>

  • 典型代码对比
    C过程式代码:

    1. #include <stdio.h>
    2. void print(int x) {
    3.     printf("%d", x);
    4. }
    复制代码


    C++面向对象代码:

    1. #include <iostream>
    2. class Printer {
    3. public:
    4.     void print(int x) {
    5.         std::cout << x;
    6.     }
    7. };
    复制代码



何时选择?
  • 选C:嵌入式系统、操作系统内核等对资源严格控制的场景
  • 选C++:游戏引擎、GUI框架、高性能服务等需要抽象封装的场景


以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-9 23:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表