当前位置: 首页 > news >正文

深圳产品网站建设南宁建设工程造价信息网站

深圳产品网站建设,南宁建设工程造价信息网站,成都市做网站公司,淮北矿业 集团 工程建设有限责任公司网站C语言虽说经常和C在一起被大家提起#xff0c;但可千万不要以为它们是一个东西。有很多人会有这样的疑问#xff1a;C语言和C有什么区别呢#xff1f;C是在C语言的基础上发展来的#xff0c;但是并不是C比C语言高级#xff0c;两者的编程思想不一样#xff0c;应用的领域…C语言虽说经常和C在一起被大家提起但可千万不要以为它们是一个东西。有很多人会有这样的疑问C语言和C有什么区别呢C是在C语言的基础上发展来的但是并不是C比C语言高级两者的编程思想不一样应用的领域也不一样。在各自的领域谁也不能替代谁。本篇来大致聊一聊C语言与C的区别如有其他看法欢迎交流指正。一、面向过程语言和面向对象语言我们都知道C语言是面向过程语言而C是面向对象语言说C和C的区别也就是在比较面向过程和面向对象的区别。1. 面向过程和面向对象的区别(1)面向过程面向过程编程就是分析出解决问题的步骤然后把这些步骤一步一步的实现使用的时候一个一个的依次调用就可以了。(2)面向对象面向对象编程就是把问题分解成各个对象建立对象的目的不是为了完成一个步骤而是为了描述某个事物在整个解决问题的步骤中的行为。举个例子(玩五子棋)(1)用面向过程的思想来考虑就是开始游戏白子先走绘制画面判断输赢轮到黑子绘制画面判断输赢重复前面的过程输出最终结果。(2)用面向对象的思想来考虑就是黑白双方(两者的行为是一样的)、棋盘系统(负责绘制画面)、规定系统(规定输赢、犯规等)、输出系统(输出赢家)。♦ 面向对象就是高度实物抽象化(功能划分)、面向过程就是自顶向下的编程(步骤划分)2.面向过程和面向对象的优缺点在学习一些比较抽象的概念时由于我们的理解能力很有限有时候一些比较恰当的例子也是有助于我们学习的因此对二者的优缺点比较还是先举例子后总结吧(1)用面向过程写出来的程序就像一份蛋炒饭也就是米饭和炒的菜均匀的混合在了一起因此蛋炒饭入味均匀不会像盖浇饭那样可能有时候吃的菜多饭少还有时候菜少饭多。但是如果你不喜欢吃蛋炒饭只想吃肉炒饭那么原来做的这份蛋炒饭就得倒掉了重新做一份肉炒饭厨师就得辛苦了(2)用面向对象写出来的程序就像一份盖浇饭也就是米饭和盖菜分别做好将盖菜放在米饭上面盖浇饭虽然没有蛋炒饭那样入味均匀但是如果给了你一份土豆丝盖饭你又不想吃了换成牛肉盖饭厨师只需要将米饭上面的土豆丝倒掉重新做一份牛肉放在上面就好了。那么到底蛋炒饭和盖浇饭哪个好吃呢我觉得各有优劣谁也不能说到底哪个好毕竟蛋炒饭的餐馆和盖浇饭的餐馆都很多而且生意都很不错存在即为合理如果非要将二者进行一个高地的比较的话那就得先设定一个场景了盖浇饭的好处就是”菜”“饭”分离从而提高了制作盖浇饭的灵活性。饭不满意就换饭菜不满意换菜。用专业术语来说就是”可维护性“较好”饭” 和”菜”的耦合度比较低。蛋炒饭将”蛋”“饭”搅和在一起想换”蛋”“饭”中任何一种都很困难耦合度很高以至于”可维护性”比较差。♦ 基于上述的例子二者的优劣总结如下面向过程语言优点性能比面向对象高因为类调用时需要实例化开销比较大比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发性能是最重要的因素。缺点没有面向对象易维护、易复用、易扩展面向对象语言优点易维护、易复用、易扩展由于面向对象有封装、继承、多态性的特性可以设计出低耦合的系统使系统 更加灵活、更加易于维护缺点性能比面向过程低二、具体语言的区别1. 关键字不同C99有32个关键字C98有63个关键字一些关键字的细微区别(1)struct在C语言中struct定义的变量中不能有函数而在C中可以有函数。(2)malloc malloc函数的返回值为void*在C语言中可以赋值给任意类型的指针在C中必须强制类型转换否则报错。(3)struct和classclass是对struct的扩展struct默认的访问权限是public而class默认的访问权限是private。2. 后缀名不同C源文件后缀.cC源文件后缀.cpp在VS中如果在创建源文件时什么都不给默认是.cpp。3. 返回值C语言中如果一个函数没有指定返回值类型默认返回int类型C中如果一个函数没有返回值则必须指定为void。4. 参数列表在C语言中函数没有指定参数列表时默认可以接收任意多个参数但在C中因为严格的参数类型检测没有参数列表的函数默认为 void不接收任何参数。5. 缺省参数缺省参数是声明或定义函数时为函数的参数指定一个默认值。在调用该函数时如果没有指定实参则采用该默认值否则使用指定的参。(C语言不支持缺省参数)(1)半缺省参数void FunTest(int _iParam1, int _iParam2 0 ){}void FunTest(int _iParam1, int _iParam2 0 , int _iParam3/* 0*/){}void FunTest(int _iParam1, int _iParam2 /* 0*/,int _iParam3 0){}(2)全缺省参数void FunTest(int _iParam1 0, int _iParam 1)//注意慎用缺省函数否则会产生二义性void FunTest ()void FunTest (int a 10 )//假如使用不带实参方式调用FunTest()函数时编译器将不知道调用哪一个产生二义性注意(1)在半缺省的情况下带缺省值的参数必须放在参数列表的最后面。(2)缺省参数不能同时在函数的声明和函数定义中出现二者只能选其一。(3)缺省值必须是常量或者全局变量。(4)缺省参数必须通过值参或常参传递。6. 函数重载函数重载函数重载是函数的一种特殊情况指在同一作用域中声明几个功能类似的同名函数这些同名函数的形参列表(参数个数、类型、顺序)必须不同返回值类型可以相同也可以不同常用来处理实现功能类似数据类型不同的问题。(C语言没有函数重载C支持函数重载)。来看个例子//下面两个函数算函数重载吗void FunTest6(){ } intFunTest6()return 0;//答案是不能因为仅仅返回值类型不同不能构成重载总结C语言和C是两个不同的编程语言只不过内容上有一定的重叠C语言是一门很强大的编程语言我觉得有机会还是要学一下一般来说有了C语言的基础上手C也会更快C和C各有各的选用考虑和应用场景并没有谁更好一说学不学看自己的兴趣和自身技术发展的考量物联网时代C/C作为物联网的的必学内容之一能够掌握核心技术才能把握整体脉络才能居高临下。
http://www.yutouwan.com/news/282125/

相关文章:

  • 怎么制作微信网站怎么运用区块链做网站
  • 网站教学路由 拦截 网站开发
  • 第一代网站建设技术舟山手机网站建设
  • 千万不能 网站东莞做网站 动点官网
  • 电子商务网站建设大作业wordpress后台500错误
  • 高端大气上档次的网站手机网站比例
  • 网站开发文献综述seo多久可以学会
  • 建站公司网站建设新乡个人网站建设
  • 国外论文类网站有哪些方面越南的网站建设
  • 英德住房和城乡建设部网站wordpress升级4.1
  • 请科技公司做网站需要注意什么兰州网站优化
  • 淮安谁家做网站网站全局搜索如何做
  • 网站模板助手网站开发的技术栈
  • 常州网站制作公司多吗网站伪静态有什么用
  • 阿里云 全国网站建设小程序备用金
  • 网站维护郑州做的比较好网站公司吗
  • 想自己做网站做推广学做网站推广要多久时间
  • 网站的建立与运营网站制作需求
  • 股票网站开发百度账号登陆
  • 青岛网站制作多少钱一个怎么做线上营销
  • 国外网站建设什么价格低杭州平面设计
  • 定制类做网站多少钱网站建设朋友圈
  • 淄博网站建设优惠臻动传媒有公司如何制作网站
  • 国外以紫色为背景的网站汾阳做网站的公司
  • 银川网站建设报价神木网站设计公司
  • 做网站优化的好处中型企业网站建设
  • 每天推荐新设计的网站d0906网站建设与管理
  • 有电脑网站怎么做手机网站合肥网站开发
  • 创意网站设计 高端wordpress小白
  • 包头整站优化网络建站