【Makefile学习记录4】变量和不同的赋值方式

   既然makefile是一种脚本程序,那么就要支持程序设计语言中通用的概念和操作。所以必然 也会支持定义变量和赋值的操作。但是不同于C语言中,先声明变量类型、定义变量名字然后赋值。在makefile中不需要声明变量的类型,makefile中变量只有一种类型,只代表文本数据(字符串)

1、makefile中变量命名规则为:

变量的定义和使用:

    例如在makefile中定义变量CC、TARGET,其中使用$引用变量的值:

            

程序运行的结果为:


注:在makefile编写过程中,重复的符号尽量使用变量来代替。要习惯于makefile中使用变量。

2、makefile中变量赋值方式:(不同的赋值方式意义不同)

  • 简单赋值(:=)
  • 递归赋值(=)这种赋值方式影响的变量是多个的。
  • 条件赋值(?=)适用于第一次变量的时候使用。
  • 追加赋值(+=)
注意事项:

  1. 在makefile中使用变量之前可以不用定义,引用结果为空值。
  2. 递归赋值时,与其相关的变量的都会随之改变。(在写makefile时,尽量避免递归赋值)
  3. 追加赋值时,会在原来值和新值之间添加一个空格。若无原先值,则新值前加空格。
  4. 编写makefile时,尽量使用简单赋值。
程序举例:(变量可以随时用随时定义)



运行结果为:


猜你喜欢

转载自blog.csdn.net/haibing_x/article/details/80065776