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

建筑公司网站运营方案网站官网认证怎么做的

建筑公司网站运营方案,网站官网认证怎么做的,做cpa比较做网站吗,网站建设兼容性在Linux系统下Makefile和C/C语言都有提供条件选择编译的语法,就是在编译源码的时候,可以选择性地编译指定的代码。这种条件选择编译的使用场合有好多,例如我们开发一个兼容标准版本与定制版本兼容的项目,那么,一些与需…

在Linux系统下Makefile和C/C++语言都有提供条件选择编译的语法,就是在编译源码的时候,可以选择性地编译指定的代码。这种条件选择编译的使用场合有好多,例如我们开发一个兼容标准版本与定制版本兼容的项目,那么,一些与需求密切相关的代码,就需要进行选择性编译;再比如我们开发一个兼容windows系统和Linux系统运行的项目,那么,一些与操作系统密切相关的代码,就需要进行选择性编译。在这篇文章就简单地讲一下基于Linux系统下通过Makefile实现条件选择编译的方法,下面将以两个功能模块module1,module2之间的条件选择编译为例子。

1.首先,在Linux目录下创建一个名为“proj”的目录。运行指令:mkdir -p proj

2.在该目录下依次创建如下文件:

module1.c内容如下所示:

#include<stdio.h>
#include<stdlib.h>void module_1_func()
{printf("run module 1\n");
}

module2.c内容如下所示:

#include<stdio.h>
#include<stdlib.h>void module_2_func()
{printf("run module 2\n");
}

main.c内容如下所示:

#include<stdio.h>
#include<stdlib.h>void main()
{printf("start test demo!\n");printf("start module1 demo!\n");module_1_func();printf("start module2 demo!\n");module_2_func();
}

Makefile内容如下所示:

include ./config
CPROG    = test
BIN     = $(CPROG) 
CC= gcc
OBJS=main.o module1.o module2.oall: $(BIN) 
clean:rm -f $(OBJS) $(BIN)
$(BIN): $(OBJS)$(CC)  -o $(BIN) $(OBJS)   $(CFLAGS) $(LDFLAGS) $(CFLAGS_EXTRA)

3.使用“make clean;make”编译之后生成一个名为“test”的可执行文件,运行这个可执行文件,结果如下图所示:

4.在当前目录下新增一个名为”config”的配置文件,在这个文件加入module1和module2的控制开关,内容如下所示(默认module1,module2功能模块关闭):

CONFIG_MODULE1=n
CONFIG_MODULE2=n

修改Makefile,内容如下:

#包含当前目录下的config文件
include ./config
CPROG    = test
BIN     = $(CPROG) 
CC= gcc
OBJS=main.o#新增module1编译选项的条件判断
ifeq ($(CONFIG_MODULE1),y)
CFLAGS += -DHAVE_MODULE1
OBJS+=module1.o
endif
#新增module2编译选项的条件判断
ifeq ($(CONFIG_MODULE2),y)
CFLAGS += -DHAVE_MODULE2
OBJS+=module2.o
endifall: $(BIN) 
clean:rm -f $(OBJS) $(BIN)
$(BIN): $(OBJS)$(CC)  -o $(BIN) $(OBJS)   $(CFLAGS) $(LDFLAGS) $(CFLAGS_EXTRA) 

修改main.c,内容如下所示:

#include<stdio.h>
#include<stdlib.h>void main()
{printf("start test demo!\n");
#ifdef HAVE_MODULE1printf("start module1 demo!\n");module_1_func();
#endif#ifdef HAVE_MODULE2printf("start module2 demo!\n");module_2_func();
#endif
}

5.修改config文件,并进行多次编译运行测试。

CONFIG_MODULE1=y

CONFIG_MODULE2=y

CONFIG_MODULE1=n

CONFIG_MODULE2=y

CONFIG_MODULE1=y

CONFIG_MODULE2=n

CONFIG_MODULE1=n

CONFIG_MODULE2=n

由以上一系列测试可知,通过修改”config”配置文件,可以很方便的根据不同的需求实现对代码进行条件编译。

总结:

条件编译使得我们可以按不同的条件编译不同的代码段,通过编译器命令行能够定义预处理器使用的宏,因而可以产生不同的目标代码,不仅可以根据需求对代码进行裁剪,缩小目标文件的体积,与此同时也可以将代码移植到不同的平台或不同的操作系统,提高软件开发效率。

http://www.yayakq.cn/news/178764/

相关文章:

  • 定西市住房和城乡建设局网站域名备案完成了怎么建设网站
  • 楼盘网站建设案例vue做网站导航
  • 推广公司组织架构东莞市长安镇网站制作优化
  • 特价流量网站学生个人网页制作 效果图
  • dedecms网站地图怎么做制作网站建设入门
  • 网站免费源码下载wordpress 用户枚举
  • 怎么形容网站做的很好asp.net 跳转别的网站
  • 可以看网站的手机浏览器在线app
  • 徐州营销型网站制使网页设计制作与代码整体素材
  • 温州联科网站建设山东手机版建站系统哪家好
  • 建设网站观澜沧州商城官网
  • 怎么做免费网站 视频公司企业邮箱怎么填写
  • php商场网站开发经验某企业管理系统
  • 如何用jsp做网站网络营销的模式主要有
  • 网站的百度地图怎么做的牡丹江47号公告
  • 计算机网站建设实训报告西安网站关键词优化
  • 企业网站总承包建设模式关键步骤市场营销考试题目及答案2022
  • 建设银行亚洲网站学校资源网站建设方案
  • 广州企业推广网站建设音响网站模板免费下载
  • 秦皇岛网站制作公司哪家好合肥网站建设步骤
  • 网站开发公司是互联网公司discuz 与Wordpress
  • 好多网站没排名了wordpress 搭建
  • 合肥本地建网站如何进行搜索引擎优化?
  • 龙口网站建设公司报价建设网站需要的人才
  • 网站建设国外拂去其网站建设与网页设计pdf
  • 成都公司网站做效果图网站有哪些
  • 中国网站建设公司百强前端可以做网站吗
  • 网站开发流程注意事项北京工程建设监理协会网站
  • 如何建开发手机网站抖音代运营创业
  • aspcms 网站地图漳浦建设局网站