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

网站设计模块西安市建设工程信息网平台官网

网站设计模块,西安市建设工程信息网平台官网,中国销售网,微享网络网站建设声明与定义分离 声明#xff1a;将声明单独封装成一个以.h为后缀名的头文件 定义#xff1a;将定义的变量#xff0c;函数#xff0c;数组所在的源文件单独封装成一个.c文件。其实就是在源文件基础上将定义过的所有东西的声明分离出去就是了。 注意#xff1a;1.声明的…声明与定义分离 声明将声明单独封装成一个以.h为后缀名的头文件 定义将定义的变量函数数组所在的源文件单独封装成一个.c文件。其实就是在源文件基础上将定义过的所有东西的声明分离出去就是了。 注意1.声明的.h文件名和.c结尾的源文件名要相同、 2.一个源文件对应一个头文件 1.预编译 1.程序编译 1.预编译 展开头文件 定义宏 选择性编译 注意 展开头文件必须以#开头  2.编译 3.汇编 4.链接       2.include 作用展开头文件 语法 #include 尖括号代表的头文件是在系统指定文件中找该库具体在lib/或者在usr/lib文件中找 #include  代表的是自己定义的库会先在当前目录文件夹下找如果找不到再在系统指定文件夹中找 注意 1,include 经常用来包含头文件可以包含 .c 文件但是大家不要包含.c 因为 include 包含的文 件会在预编译被展开如果一个.c 被包含多次展开多次会导致函数重复定义。所以不要包含.c 文件 2,预处理只是对 include 等预处理操作进行处理并不会进行语法检查 这个阶段有语法错误也不会报错第二个阶段即编译阶段才进行语法检查 3.宏define 1.定义不带参的宏 define pi(宏名)  值 注意1.定义不带参的宏值可以不写 2.不带参的宏定义不要后面加分号 3.只能在当前文件中使用 4.在宏定义后取消定义前使用 例子       #include stdio.h #define PI 3.14 #define X int main(int argc, char const *argv[]) { printf(PI%f\n,PI); #undef PI //取消宏定义 //printf(PI%f\n,PI); return 0; } 2.定义带参的宏 define 宏名形参 a b体 3.注意 1.结尾要加分号 2.括号中可以加形参后面运算表达式不能省 3.形参没有数据类型 4.不止在当前文件中使用可以在别的文件中使用 4.带参和不带参的宏的区别 宏:在预编译时对其进行替换,如果一个文件中多次使用宏,那意味着要替换多次,此时就需占用内存,所以占据的内存多 产生的预编译时期 占内存多 速度快 函数:在程序运行时在代码区存储一份,每次调用该函数都需在代码区寻找,将其放入栈内存中(压栈),当函数执行完毕后,从栈中移除(弹栈)                 产生在运行时                                  占内存少 5.#undef   宏名          //取消宏定义 6.总结 宏就是在预编译时期对其进行替换 不带参宏替换的是一个值 带参宏替换的是一段代码    4.选择性编译 作用选择代码是否被编译 语法 2.库 作用 也叫代码库可以将一些目标文件放在一起合并方便使用 分类 1.静态库 2.动态库 动态库与静态库的区别 注意 程序中引入的文件在动态库与静态库同时存在两份 静态编译程序引入静态库中的该文件 动态编译程序引入动态库中的该文件 编辑命令 静态库 gcc  -static  源文件名  - o   生成的可执行文件名 动态库         gcc  源文件名  - o   生成的可执行文件名 静态库 制作 gcc -c 源文件名.c -o 生成的二进制文件名.o ar rc lib静态库名称.a 生成的二进制文件名.o 注意静态库起名的时候必须以 lib 开头以 .a 结尾 使用 情况1: 使用静态库的文件与静态库在同一文件夹下                 命令:                 gcc 源文件名 静态库名称 -o 生成的可执行文件名                  情况 2: 使用静态库的文件与静态库不在同一文件夹下                                  注意:                 为了让静态库文件与其对应的头文件和使用静态库文件不在同一文件夹下                 所以创建includes与 libs 文件夹                 includes文件用于存储头文件                 libs文件夹存储静态库文件                 mkdir includes                 mkdir libs                 mv myfun.h includes/                 mv libmyfun.a libs/                 -L 引用的静态库所在的路径                 -l 静态库名, 不要 lib 与 .a                 -I 头文件所在路径                                  命令:                         gcc 源文件名 -L 静态库所在的路径 -l 静态库名 -I 头文件所在路径 -o 生成的可执行文件名         情况 3: 静态库文件与对应的头文件在系统文件夹下                          系统库路径:                 /usr/include 存储头文件                 /usr/lib 或 /lib 存储库文件         注意:                 为了让静态库文件与其对应的头文件和系统文件夹下,所以需要移动                 sudo mv includes/myfun.h /usr/include                 sudo mv libs/libmyfun.a /usr/lib         命令:                 gcc 源文件名 -l 静态库名 -o 生成的可执行文件名 动态库 制作         命令                 gcc -shared 源文件名 -o 生成的动态库文件名.so 使用         情况1:使用动态库的文件与动态库在同一文件夹下                 命令:                         gcc 源文件名 动态库名称 -o 生成的可执行文件名         情况2:使用静态库的文件与静态库不在同一文件夹下                 命令:                         gcc 源文件名 -L 动态库所在路径 -l 动态库名称 -I 头文件所在路径                 注意                         动态库名需要去掉前面的lib与后面.so         情况3:静态库文件与对应的头文件在系统文件夹下                 命令                         gcc 源文件名 -l 静态库名 -o 生成的可执行文件名 注意         运行中出现动态库找不到问题需要将动态库所在目录导入用户环境变量         export LD_LIBRARY_PATH库文件所在路径:$LD_LIBRARY_PATH         export LD_LIBRARY_PATH./:$LD_LIBRARY_PATH
http://www.hkea.cn/news/14509030/

相关文章:

  • 卡地亚手表官方网站phpwind做的网站
  • 定做网站多少钱手机端网站如何做
  • 企业的网站建设费账务处理企业推广平台排行榜
  • 做准的算命网站旅游企业网站建设
  • 龙岗英文网站建设pc网站转换手机网站代码
  • 昆明网站seo优化注册公司网上核名网站
  • 静态网站开发课程店面设计费入什么科目
  • 大神自己做的下载音乐的网站网站开发部门的规章制度
  • 手机如何创造网站南京网站优化网站建设公司
  • 评论凡科网站建设怎么样wordpress模板 户外钓鱼类网站
  • 甘肃省建设工程安全质量监督管理局网站团购网站发展
  • 做网站必须会编程吗国内坚持做正品的网站
  • wap 网站怎么做子网站
  • 建网站是自己做还是用CMS淘宝刷网站建设
  • 盐山网站建设不连接wordpress安装
  • 湖北餐饮网站建设太仓智能网站建设
  • 怎么建视频网站免费的会计网站模板
  • 微商手机网站制作河南工程建设交易信息网
  • 想把比尔的网站封了如何做有没有工程外包的网站
  • 网站开发教程收费版多商户商城系统源码
  • dede添加网站背景美橙互联网站
  • 自己做的网站页面错误有关网站开发的论文
  • 深圳外贸建站及推广项目分享平台
  • wordpress实例网站福州网站设计哪家做的好
  • 不下载直接登录qq聊天优化方案英语必修二电子版
  • 网站建设要考虑哪些内容网站运营费用预算
  • 店面设计费宁波附近的seo推广
  • 网站搭建工具视频网站服务器地址查询
  • 上海网站制作多少钱热点新闻
  • 东莞网络销售的网站建设大港做网站公司