码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【C语言】宏


    宏定义

    • #define<名字><值>
    • 没有结尾的分号
    • 名字必须是一个单词,值可以是任何东西
    #define pi 3.1415926
    //定义一个宏 pi是这个宏的名字 3.14159是这个宏的值
    
    • 1
    • 2
    • 如果一个宏的值中有其他宏的名字,也会被替换
    • 如果一个宏的值超过一行,最后一行之前的行末要加\
    • 宏的值后面出现的注释不会被当作宏的一部分
    • 没有值的宏#define _DEBUG
    #define PI 3.14
    #define PI2 2*PI
    #define PRT printf("hello"); \
    			printf("ok")
    
    int main(){
    	printf("%.2f\n",PI); //3.14
    	printf("%.2f\n",PI2); //6.28
    	PRT; //hello ok
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    预定义的宏

    • __LINE__
    • __FILE__
    • __DATE__
    • __TIME__
    • __STDC__
    #include
    
    int main(){
    	printf("%s:%d\n",__FILE__,__LINE__); //D:\LYJ\test.cpp:4
    	printf("%s,%s\n",__DATE__,__TIME__); //Sep 17 2023,15:16:52
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    带参数的宏

    • 类似于函数的宏#define cube(x) ((x)*(x)*(x))可以带参数
    #include
    #define cube(x) ((x)*(x)*(x))
    //用((x)*(x)*(x))替换cube(x)
    int main(){
    	printf("%d",cube(2)); //8
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 带参数宏的定义规则:一切都要括号,整个值要括号,参数出现的地方要括号
      #define RAD(X) ((X)*52)
    • 错误的的宏定义:
      #define RAD(x) (x*52) / #define RAD(x) (x)*52
  • 相关阅读:
    2022-27-27——SpringBoot2.0集成WebSocket,实现后台向前端推送信息
    vue中常用的修饰符
    MongoDB简明手册
    Gartner:2022年全球IT支出将超4万亿美元,软件增速最高
    Day8 尚硅谷JUC——JUC概述
    工厂模式有三个Level,你能用Go写到第几层?
    SpingBoot之替换容器为Undertow
    扩展中国剩余定理
    笔记本 M.2 PCIe 3.0 x4 外接显卡方案与实践
    洛谷【入门4】数组-【深基5.例3】冰雹猜想
  • 原文地址:https://blog.csdn.net/m0_74033027/article/details/132943040
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号