鱼C论坛

 找回密码
 立即注册
查看: 789|回复: 7

[已解决]小白提问C 和C++有什么区别

[复制链接]
发表于 2023-11-24 10:45:50 | 显示全部楼层 |阅读模式
10鱼币
小白提问C 和C++有什么区别
最佳答案
2023-11-24 10:45:51
本帖最后由 tommyyu 于 2023-11-24 11:30 编辑

C++ 在 C 的基础上加了一些东西,使其变得的更加易于使用。现有的大部分 C 语言代码皆可在 C++ 上运行。

C++ 相较于 C 加了很多的语法特性,也加了很多内置函数(如 STL),但最主要的是 C++ 加入了 类与对象的概念,是一门面向对象的语言,而 C 是面向过程的语言。

最佳答案

查看完整内容

C++ 在 C 的基础上加了一些东西,使其变得的更加易于使用。现有的大部分 C 语言代码皆可在 C++ 上运行。 C++ 相较于 C 加了很多的语法特性,也加了很多内置函数(如 STL),但最主要的是 C++ 加入了 类与对象的概念,是一门面向对象的语言,而 C 是面向过程的语言。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 10:45:51 | 显示全部楼层    本楼为最佳答案   
本帖最后由 tommyyu 于 2023-11-24 11:30 编辑

C++ 在 C 的基础上加了一些东西,使其变得的更加易于使用。现有的大部分 C 语言代码皆可在 C++ 上运行。

C++ 相较于 C 加了很多的语法特性,也加了很多内置函数(如 STL),但最主要的是 C++ 加入了 类与对象的概念,是一门面向对象的语言,而 C 是面向过程的语言。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 10:46:35 | 显示全部楼层
C和C++有以下几点主要区别:

1. 编程范式
- C是一种过程式编程语言,它的设计目标是提供高效的系统编程和应用程序开发。
- C++不仅支持过程式编程,还引入了面向对象编程的概念,如类、继承、多态等。

2. 数据抽象
- C相对较为底层,主要关注数据的表示和操作,不提供高级的数据抽象机制。
- C++引入了类和对象的概念,支持数据的抽象和封装,使得程序员可以更加方便地组织和管理数据。

3. 标准库
- C的标准库相对较小,提供了基本的输入输出、字符串处理等功能。
- C++继承了C的标准库,并添加了大量的容器、算法、迭代器等高级数据结构和算法,还引入了异常处理等特性。

4. 兼容性
- C++是C的超集,几乎所有的合法C程序都可以在C++中编译和运行,这意味着C++支持C语言的语法和语义。

5. 使用场景
- C常用于系统级编程、嵌入式开发等需要高效性能和对硬件底层操作的场景。
- C++常用于大型软件开发、图形界面应用、游戏开发等需要面向对象特性和高级抽象能力的场景。

以上是C和C++之间的一些主要区别。希望能够帮助您更好地理解它们之间的差异。如果您有其他问题,也欢迎继续提问。

回复来自于CHAT-GPT。回复仅供参考,如有人工回答,最佳答案请优先选择人工
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 10:46:46 | 显示全部楼层
C和C++是两种不同的编程语言。

首先,C是一种过程式编程语言,它注重于解决问题的步骤和算法,强调程序的结构和功能。C是一种相对较底层的语言,它提供了对硬件的直接访问,使得它在系统级编程和嵌入式系统开发中广泛使用。

C++是一种面向对象编程语言,在C的基础上添加了面向对象的特性。C++不仅可以使用C的所有功能,还可以通过类和对象的概念进行面向对象的编程。面向对象编程强调的是数据和行为的封装,使得程序可以更加模块化,可读性更高,可维护性更好。C++还提供了更多的高级特性,如异常处理、模板、STL等,使得程序开发更加方便和灵活。

总结一下,C和C++的区别主要在以下几个方面:
1. C++是C的超集,即C++可以使用C的所有功能。
2. C++添加了面向对象的特性,使得程序可以更好地组织和管理。
3. C++提供了更多的高级特性,如异常处理、模板、STL等。
4. C++的语法相对复杂一些,因为要支持面向对象编程的特性。

这里提供一个简单的代码示例,用C和C++分别实现一个计算两个数字之和的程序:

C代码:
  1. #include <stdio.h>
  2. int add(int a, int b) {
  3.     return a + b;
  4. }
  5. int main() {
  6.     int num1 = 10;
  7.     int num2 = 20;
  8.     int sum = add(num1, num2);
  9.     printf("Sum: %d\n", sum);
  10.     return 0;
  11. }
复制代码

C++代码:
  1. #include <iostream>
  2. int add(int a, int b) {
  3.     return a + b;
  4. }
  5. int main() {
  6.     int num1 = 10;
  7.     int num2 = 20;
  8.     int sum = add(num1, num2);
  9.     std::cout << "Sum: " << sum << std::endl;
  10.     return 0;
  11. }
复制代码

这两段代码实现了同样的功能,计算两个数字之和。感兴趣的话可以自己编译运行看看结果。
以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 12:52:14 | 显示全部楼层
C不掉头发,C++掉头发。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 14:43:10 | 显示全部楼层
C艹由C发展而来,所以你可以在.cpp里写C
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-24 15:46:25 | 显示全部楼层
c面向过程 c++面向对象
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-25 14:38:22 | 显示全部楼层
额,C++与C相比加了点内容——比如类和对象......
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-30 22:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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