• 学习笔记:Makefile的ifeq逻辑或,逻辑与的变通实现


     
     
    (1)ifeq的用法
    ifeq ($(变量名), 变量值 )
    ........
    else ifeq ($(..), ..)
    .........
    else
    .........
    endif
    (2)最近在学习makefile的过程中遇到需要用ifeq进行逻辑与判断,但是ifeq并没有像其他编程语言那样有 逻辑或(||)  逻辑与(&&) 的符号可用。这时候需要变通一下。
    1)逻辑与变通实现:
    举例说明:比如需要判断两个变量 VALUE1 和 VALUE2 的值都存在才执行某个动作,这需要逻辑与的判断
    C语言的逻辑:  if ( VALUE1  &&  VALUE2){
    do something....
    }
    没有&&符号,我们可以这样变通:将两个变量链接起来再判断
    ifneq ($(VALUE1)$(VALUE2),)
    do something....
    endif
    如果变量 VALUE1 和 VALUE2 都有具体的值,比如需要进行这样的判断: VALUE1 == V1 && VALUE2 == V2, 可以按如下的写法;
    ifeq ($(VALUE1)_$(VALUE2), V1_V2)    ### 当然中间的下划线 "_" 可以用其他字符代替
    do something....
    endif
    2) 逻辑或变通实现,同样是上面的两个变量
    if( VALUE1 == V1 || VALUE2 == V2 ) {...} 可以用findstring函数做如下变通实现:
    #如果VALUE1或者VALUE2为V1或V2,则findstring 不会返回空。
    ifneq ($(findstring $(VALUE1)$(VALUE2),  V1  V2),)
    do something...
    endif
  • 相关阅读:
    前沿科技相关
    52ABP
    C#常用及注意点
    电商秒杀系统:电商微服务框架组件
    面向对象OOP
    《CLR via C#》书籍
    .NET发布时选择【独立部署模式】引发的故事
    unity 3D物体使用EventSystem响应事件
    协程
    unity 2d碰撞/ui组件碰撞
  • 原文地址:https://www.cnblogs.com/OnlyLV520/p/8554839.html
Copyright © 2020-2023  润新知