C语言和C++的一些区别
C语言和C++的一些区别
C++在语法上比C语言有了一些改进
- C语言的变量申明必须放在函数最上面,C++没有这个限制
C语言的结构体不能直接当数据类型使用,必须加上struct关键字,而C++没有限制
- C语言的结构体使用:
struct student {char* name;int age; }; int main() {struct student stu = {0}; //使用结构体时必须要加上structstu.name = "Bob";stu.age = 18;return 0; }
- C++的结构体使用
student stu = {0}; //使用结构体时直接当成数据类型即可
- C语言无法使用引用,C++加入了引用(即“&+变量”式的指针)机制
- C++加入了bool型数据类型,C语言是没有的
- C++加入了命名空间 using namespace
定义域,例如:
std::cout<<name;
C++ 加入了函数重载机制,允许使用同名但不同参数列表、不同返货类型的多个函数定义
- C语言中没有默认参数,在使用默认参数时要注意二义性问题,尽量不要在设置了默认参数时使用函数重载
C++ 中加入了初始化语法,例如
int a(5);
,其实这个是把a初始化为5,等价于int a = 5;
,类似的,动态内存申请也可以这样初始化,例如int* a = new int(5); //申请4字节的int型内存空间,并将其初始化为5
而对于new动态内存申请,跟多的用到的是[],l例如
int* a = new int[5]; //申请5个int型内存空间(20字节),相当于一个有5个元素的int型数组
C++ 中struct结构体升级变得和类类似,可以拥有成员函数,析构函数等,但成员属性都是public。
* 注:不过,本质上struct还是原来的结构体(和class不一样),本身没用成员函数,只是C++的编译器在编译时自动把你写的成员函数 编译成外部函数 并通过 引用 *实现“成员函数”的功能,也就是说struct和class有本质的区别,struct中没有class中的this指针。
结构体中的成员函数只是为了提高编程效率,给程序员减轻一些负担而产生的一种优化。- 在C++ 中inline内联函数代替C语言中的宏函数
C语言和C++的一些区别相关推荐
- c语言 python-C语言、Java语言和python语言的区别在哪里
原标题:C语言.Java语言和python语言的区别在哪里 我们经常听到C语言.Java语言和python语言,那么这三者的区别在哪里呢?随着科技的进步以及新技术的推进,编程语言的种类也是越来越多,随 ...
- python和c语言的区别-C语言、Java语言和python语言的区别在哪里
原标题:C语言.Java语言和python语言的区别在哪里 我们经常听到C语言.Java语言和python语言,那么这三者的区别在哪里呢?随着科技的进步以及新技术的推进,编程语言的种类也是越来越多,随 ...
- java语言和C语言的区别
java语言和C语言的区别 简单的说就是两种不同的语言. 区别如下: 1在运行方式上: C:原始的C是面向过程的.就是按行执行. JAVA:绝对的面向对象.就像按模块执行. (补充:当然,在C++,及 ...
- 论述c语言和java语言的区别,java语言和c语言的区别有哪些
java语言和c语言的区别有单文件的编译时间java比c语言快:c语言可以直接操作内存,java不能直接操作:c语言可以封装动态库,java不行:c语言有指针,java没有指针:c语言可以直接操作串口 ...
- java语言和c语言_java语言和c语言的区别
java语言和c语言的区别 java语言和c语言作为编程的两大语言,它们之间存在什么样的区别呢?下面百分网小编就为大家讲一讲,希望对您有所帮助! C语言是一门通用计算机编程语言,应用广泛.C语言的设计 ...
- python语言与c语言java的区别_c语言和java有什么区别
区别:1.单文件的编译时间java比C语言快:2.C语言可以直接操作内存,java不能直接操作:3.C语言可以封装动态库,java不行:4.C语言有指针,java没有指针:5.C语言可以直接操作串口, ...
- python和c语言和java有什么区别_python和c的区别 python、java和c语言的区别?
Python和c语言有什么区别如果我的坚强任性,会不小心伤害了你.你能不能温柔提醒,我虽然心太急,更害怕错过你 前者为 脚本语言 需要虚拟机 解释执行 ..一般情况下 不能生成exe(要使用打包工具) ...
- java c语言语法对比_c语言和java语法有区别吗?
c语言和java语法有区别吗? c语言和java在语法上有区别,区别是: 1.C语言有指针,java没有指针: C语言的语法比较简单,但是它的亮点指针很容易出错,想要好好的运用指针是件很难的事情,用好 ...
- R语言和python语言的区别在什么地方,各自的应用场景是什么
R语言和Python语言都是广泛使用的数据分析和科学计算语言,但它们有一些不同之处. R语言是一种专门用于数据分析和统计建模的编程语言.它提供了许多内置的数据结构和函数,可以方便地进行数据处理.可视化 ...
最新文章
- Java String.substring内存泄露?
- H5移动端开发学习总结
- 为什么 SAP 电商云 Spartacus UI RouterModule.forChild 传入的 path 为 null
- 大叔手记(12):我的一次面试经历(谈大叔如何应对面试官)
- python运算符_Python运算符总结
- 惠普暗影精灵3清灰_如何评价惠普笔记本这几年的表现?尤其是暗影精灵系列。...
- npm ERR! code ENOENT npm ERR! syscall open npm ERR! errno -4058 npm ERR! enoent ENOENT: no such file
- CoreData之增删改查
- ASP.NET MVC 5 - 控制器
- 【译】R包介绍:Online Random Forest
- JSP中的坑(二):使用include包含jsp文件时contentType中charset的值区分大小写
- Bundle Adjustment原理及应用
- 打游戏的计算机,玩游戏还得台式机!高性能游戏台式电脑推荐
- atoi函数_linux网络编程之POSIX 消息队列 和 系列函数
- Originpro拟合Gompertz模型
- 谷歌浏览器上传图片和图片另存为就卡死崩溃解决方案
- 结合环境专业计算机思维论文,环境艺术设计思维的表达论文范文
- Java面试宝典2017版
- 10-11月数据接口-京东商品信息api,金碟Api对接,京东商智监控商品request采集后指数还原,聚水潭第三方接入api,拼多多上架辅助非第三方SKU核对上传,拼多多销量无限修改更新
- 英文歌曲:Right Here Waiting(此情可待)
热门文章
- 什么是爬虫,常见的java爬虫框架有哪些?-蛙课网
- #解决仿微信聊天界面键盘遮盖聊天的界面
- 用Gzip进行js的超强压缩
- 教你50行代码实现前端路由小轮子
- 同人逼死官方系列!基于sddc 协议的SDK框架 sddc_sdk_lib 解析
- html连接accdb文件,与.accdb文件的简单C#连接
- spark-06:MLlib
- python女性素描_不给你的女朋友来张素描吗?使用python将图片转素描
- 智能用户增长: 一站式的消费者资产管理和运营平台
- 【QT学习】实现鼠标滑动触发的轮播图