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

郑州建设安全管理协会网站钉钉企业注册流程

郑州建设安全管理协会网站,钉钉企业注册流程,百度识图扫一扫,免费的网页设计成品下载C语言的著作中#xff0c;至今还没发现把.h文件的用法写的透彻的。在实际应用中也只能依葫芦画瓢#xff0c;只知其然不知其所以然#xff0c;甚是郁闷#xff01;闲来无事#xff0c;便将搜集网络的相关内容整理一下#xff0c;以便加深自己的理解 理论概述#xff1a;… C语言的著作中至今还没发现把.h文件的用法写的透彻的。在实际应用中也只能依葫芦画瓢只知其然不知其所以然甚是郁闷闲来无事便将搜集网络的相关内容整理一下以便加深自己的理解 理论概述 .h中一般放的是同名.c文件中定义的变量、数组、函数的声明需要让.c外部使用的声明。 1)h文件作用: 1.方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明 2. 使函数的作用域从函数声明的位置开始而不是函数定义的位置(实践总结) 3 .提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h)。 2)h文件里应该有什么:常量,结构,类型定义,函数,变量申明。 3)h文件不应该有什么:变量定义, 函数定义。 4)extern问题:   1.对于变量需要extern 2.对于函数不需要因为函数的缺省状态是extern的.如果一个函数要改变为只在文件内可见,加static。 5)include包含问题:虽然申明和类型定义可以重复,不过推荐使用条件编译。   #ifndef _FILENAME_H,    #define _FILENAME_H   …… #endif 实践总结 先看最简单的程序:hello world [cpp] view plaincopy 1 /*test1.c*/   2 main()   3 {   4   printf(Hello World!\n);    5 }    注意test1中并没有.h文件编译可以顺利通过。把程序做下改动下面这个 [cpp] view plaincopy 1 /*test2.c*/   2 prtstr()   3 {   4   printf(Hello World!\n);    5 }   6 main()   7 {   8     prtstr();    9 }   test2.c中还是没有.h文件编译仍可以顺利通过。再把程序改动下 [cpp] view plaincopy 1 /*test3.c*/   2 main()   3 {   4   prtstr();    5 }   6    7 prtstr()   8 {   9   printf(Hello World!\n);    0 }   test3.c中仍然没有.h文件编译失败→_→。难道函数的位置影响编译的过程现在我们来熟悉一下C语言中的概念作用域。 我们在这里只讲述与.h文件相关的顶层作用域, 顶层作用域就是从声明点延伸到源程序文本结束, 就prtstr()这个函数来说他没有单独的声明,只有定义,那么就从他定义的行开始,到文件结束, 也就是说,在test2.c的main()函数的引用点上,已经是他的作用域。 test3.c的main()函数的引用点上还不是他的作用域,所以会编译出错. 这种情况怎么办呢? 有两种方法 ,一个就是让我们回到test2.c, 顺序对我们来说没什么, 谁先谁后不一样呢只要能编译通过,程序能运行, 就让main()文件总是放到最后吧。那就让我们来看另一个例程,让我们看看这个方法是不是在任何时候都会起作用.  [cpp] view plaincopy /*test4.c*/     2 play2()     3 {     4      play1();       5 }     6        7 play1()    8 {    9       play2();            10 }    11       12 main()    13 {    14      play1();    15 }    这就是经常用到的一种算法, 函数嵌套。play1 和play2 这两个函数哪个放到前面呢?这时就需要我们来使用第二种方法,使用声明. [cpp] view plaincopy 1 /*test5.c*/     2 play1();     3 play2();    4     5 play2()     6 {     7   play1();     8 }     9   play1()    10 {    11   play2();    12 }    13 main()    14 {    15   play1();    16 }    一个大型的软件项目,可能有几千个,上万个 play, 而不只是 play1,play2这么简单, 这样就可能有 N 个类似 play1(); play2(); 这样的声明, 这个时候就需要我们想办法把这样的 play1(); play2(); 另行管理, 而不是把他放在.c文件中, 于是.h 文件出现了. [cpp] view plaincopy 1 /*test.h */    2 play1();     3 play2();     4 /* test6.C */    5 #include “test.h”     6 play2()     7 {     8   play1();     9 }    10 play1();    11 {    12   play2();    13 }    14 main()    15 {    16   play1();    17 }    上面是.h文件的最基本的功能。
http://www.zqtcl.cn/news/940319/

相关文章:

  • 佛山市品牌网站建设价格网站设计模板免费
  • 澧县网站建设常用的oa系统办公软件
  • 江门网站推广哪里专业网站显示百度地图
  • 上海微网站网站的营销推广方案及预算
  • 灌南住房建设局网站南京网站开发南京乐识好
  • 万网网站建设步骤公司建设网站能提升什么竞争力
  • 门户网站 页面集成防内涵吧网站源码
  • 二手房发布网站怎么做有哪个网站有免费视频素材
  • 张浦专业做网站纯html5网站
  • qq互联 网站开发北京博洛尼装饰公司
  • 企业网站模板建站广州红盾信息门户网站
  • 做网站都用到哪些软件商品网站建设方案
  • 集美区网站建设下面软件是网页制作平台的是( )
  • 中国建设银行纪念币预约网站做盗版影视网站
  • 网站建设工作年报江苏城乡和住房建设厅网站
  • 免费做网站tk地方门户网站推广方法有那些
  • 查企业年报的网站微商网站如何做
  • 做网站要了解的事情网站地图有什么作用
  • 企业网站asp源码怎么注册公司logo
  • 一个域名能同时做2个网站吗网站建设与维护的认识
  • 微信公众号怎么做网站链接ftp网站服务器
  • 免费舆情信息网站hao123主页
  • 网站空间不足wordpress最新编辑器怎么还原
  • 电信网站备案查询系统wordpress搜插件错误
  • 忻州企业网站建设房地产 网站 设计制作
  • 重庆水务建设项目集团网站中国十大公司排行榜
  • 做网站服务器需要系统app程序定制开发
  • 宁波网站推广营销公司wordpress插件转php
  • wordpress网站生成app应用制作广告的软件
  • 网站建设多久可以建成淘宝建设网站首页