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

快速学做网站2024年重启核酸

快速学做网站,2024年重启核酸,做视频网站需要什么空间吗,公司网站开发公司创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡>𖥦<)!!
主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!
🔥c++系列专栏:C/C++零基础到精通 🔥

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ

在这里插入图片描述

c语言内容💖:

专栏:c语言之路重点知识整合

【c语言】全部知识点总结


目录

  • Makefile 介绍:
    • 源代码的编译过程
  • Makefile 的基本语法:
  • 示例

Makefile 介绍:

Makefile 是被用于自动化构建过程的脚本文件,对一个项目具有高可用性可重用性

Makefile 描述了如何从一个或多个源文件编译、链接和生成目标文件或可执行文件

可以通过使用 make 命令方便地编译和重新编译项目,而无需手动执行每个构建步骤。

源代码的编译过程

在我们编写完代码之后的.c文件被称为源代码文件,此时是代码的预处理期。

  • 编译期:在我们按下调试键后,编译软件中的编译器会将我们的源代码进行编译,成为汇编语言,如果我们在书写代码中有语法等错误,在编译时编译器将不会通过,会报出以C为开头的错误(编译:compile)即为编译错误。
  • 汇编期:在经过汇编期后,汇编语言会由汇编器转化为真正的机器语言即01指令,生成.obj文件(目标文件),通过对代码调试反汇编可以看到,我们的一句代码在机器语言中对应了很多行的机器语言。
  • 连接期:通过连接器计算机将一些.obj文件整合到一起,通过头文件(库函数)连接到一起,打包组成了最终的exe可执行文件。如果出现了LNK错误即是连接期出现了问题,可能是main函数出现错误(一个项目没有或者有多个main函数)或者缺少头文件。执行期即执行该exe文件。

Makefile 的基本语法:

Makefile 一般包含:

  • 显式规则:显式规则说明如何生成一个或多个的目标文件。明显指出要生成的文件,文件的依赖文件,生成的命令。 TARGET 变量定义了最终生成的可执行文件的名称。

  • 变量定义:在 Makefile 中可以定义一系列的变量,变量一般都是字符串,当 Makefile 被执行时,变量的值会被扩展到相应的引用位置上。

  • 文件指示:其包括了三个部分,一个是在一个 Makefile 中引用另一个 Makefile,就像 C 语言中的 include 一样;另一个是指根据某些情况指定 Makefile 中的有效部分,就像 C 语言中的预编译#if 一样;还有就是定义一个多行的命令。

  • 注释:Makefile 中只有行注释,和 UNIX 的 Shell 脚本一样,使用“#”字符

  • CC 变量定义了要使用的编译器(在这里是 gcc)。

  • SRCS 变量包含所有的源文件,OBJS 变量则是从 SRCS 变量中的 .c 扩展名替换为 .o 得到的,代表目标文件。

  • all 是默认目标,当运行 make 命令时,它会首先尝试构建这个目标。all 依赖于 $(TARGET),即它会尝试构建可执行文件。

  • $(TARGET): $(OBJS) 描述了如何从目标文件生成可执行文件。使用了 $(CC) 变量定义的编译器,并将所有的目标文件链接起来生成可执行文件。

  • %.o: %.c 描述了如何从 C 源文件编译生成目标文件。 < 代表依赖项(源文件), < 代表依赖项(源文件), <代表依赖项(源文件),@ 代表目标(目标文件)。

  • clean 目标是一个常用的清理规则,用于删除生成的目标文件和可执行文件。使用 make clean 命令执行


示例

main.c 生成可执行文件 app 的 makefile 文件示例:

# 定义gcc编译器  
CC=gcc  # 定义源文件和目标文件  
SRCS=main.c 
OBJS=$(SRCS:.c=.o)  
TARGET=app# 默认目标:all  
all: $(TARGET)  
# 链接目标文件以生成可执行文件  
$(TARGET): $(OBJS)  $(CC) $(OBJS) -o $(TARGET)  
# 从源文件编译生成目标文件  
%.o: %.c  $(CC) -c $< -o $@  
# 清除生成的目标文件和可执行文件  
clean:  rm -f $(OBJS) $(TARGET)
CC=gcc  
CFLAGS=-Wall -g  # 添加编译选项  # 使用通配符获取所有.c文件  
CFILES=$(wildcard *.c)  
OBJS=$(CFILES:.c=.o)  # 默认目标:all  
all: app  # 链接目标文件以生成可执行文件  
app: $(OBJS)  $(CC) $(CFLAGS) -o app $(OBJS)  # 从源文件编译生成目标文件  
%.o: %.c  $(CC) $(CFLAGS) -c $< -o $@  # 清除生成的目标文件和可执行文件  
clean:  rm -rf hello *.o

image.png


在这里插入图片描述

大家的点赞、收藏、关注将是我更新的最大动力! 欢迎留言或私信建议或问题。
大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!如果本文哪里有错误的地方还请大家多多指出(●'◡'●)
http://www.dt0577.cn/news/13386.html

相关文章:

  • 给网站增加功能怎么做腾讯新闻潍坊疫情
  • 罗田做网站职业培训机构需要什么资质
  • 蕲春做网站免费搭建网站的软件
  • 商标查询官方入口seo sem
  • 做韦恩图的在线网站营销方法
  • wordpress安装后做什么免费网站建设seo
  • 常州网站制作套餐百度首页精简版
  • 网站推广专家b2b平台有哪几个
  • 新网站建设咨询宣传软文是什么意思
  • 营销型网站建设定制百度推广软件
  • 网站建设与策划试卷如何做seo优化
  • 自己做的网站怎样弄网上seo快排软件
  • 怎样注册网站做销售网站入口
  • 专门做图表的网站百度推广广告收费标准
  • 娄底网站开发跨境电商平台
  • wordpress 付费主题 时间百度官网优化
  • 网站展示模板网站推广苏州
  • 临沂做网站的公司长春建站服务
  • 帝国网站系统做专题百度健康人工客服电话24小时
  • 唐山网站建设价格小学生抄写新闻20字
  • 东莞市住房和城乡建设局门户网站免费域名注册永久
  • 临淄网站制作深圳seo排名
  • 机电建设有限公司网站软文营销文案
  • 哈尔滨建工建设集团优化清理大师
  • 北京企业网站建设公司宣传推广图片
  • 寮步网站建设高性能sem推广软件哪家好
  • 2018网站建设百度引流平台
  • 建网站首选公司推广营销
  • 长沙0731房地产网网站优化种类
  • 中英文微信网站开发建站是什么意思