zoukankan      html  css  js  c++  java
  • [PHP] PHP源码中的条件编译定义

    根据不同情况编译不同代码、产生不同目标文件的机制,称为条件编译
    有这些预处理命令:#if、#elif、#else #endif ;#ifdef #else #endif

    PHP源码:

    #ifdef SERIALIZE_HEADERS //如果存在宏定义SERIALIZE_HEADERS
        # define VEC_FREE() smart_str_free(&vec_str) //宏定义VEC_FREE()
    #else //如果不存在
        # define VEC_FREE() do {} while (0) //宏定义空操作
    #endif
    #ifdef DEBUG //如果存在宏定义DEBUG
    #   define LOG_MSG printf //宏定义LOG_MSG
    #else //如果不存在
    #   define LOG_MSG(...) //宏定义空操作
    #endif

    练习:

            #if _WIN32
            printf("windows系统 
    ");
            #elif __linux__
            printf("linux系统 
    ");
            #else
            printf("其他系统 
    ");
            #endif
    
            #ifdef N
            printf("存在宏定义N 
    ");
            #else
            printf("不存在宏定义N 
    ");
            #endif
  • 相关阅读:
    0919 作业
    0918 登录注册
    20190918 文件处理
    20190917 字符编码
    0916 作业
    0916 数据类型与深浅拷贝
    0913 作业
    0912 for循环及内置方法
    0911 作业
    Ubuntu同时忘记用户密码和root密码
  • 原文地址:https://www.cnblogs.com/taoshihan/p/8283247.html
Copyright © 2011-2022 走看看