#include <stdio.h>//说明:在windows 操作系统和 linux操作系统下,生成源码不一样!!!//#include <windows.h>
//int main() {
//    Sleep(5000); //毫秒
//    puts("hello, 代止兮~"); //输出
//    getchar();
//    return 0;
//}#if _WIN32   //如果是windows平台, 就执行 #include <windows.h>
#include <windows.h>
#elif __linux__  //否则判断是不是linux ,如果是linux 就引入<unistd.h>
#include <unistd.h>
#endif
int main() {//不同的平台下调用不同的函数#if _WIN32  //识别windows平台Sleep(5000); //毫秒#elif __linux__  //识别linux平台sleep(5); //秒#endifputs("hello, 代止兮~"); //输出getchar();return 0;
}


#include <stdio.h>
//宏定义 , 宏名 M ,  对应的字符串 (n*n+3*n)
//注意:如果宏对应的字符串 有 () , 那么就不能省略
#define M (n*n+3*n)int main(){int sum, n;printf("k=%d", n);printf("Input a number: ");scanf("%d", &n); //n = 3sum = 3*M+4*M+5*M; // 宏展开? 3*(n*n+3*n);+4*(n*n+3*n);+5*(n*n+3*n);printf("sum=%d\n", sum);getchar();getchar();return 0;
}




#include <stdio.h>//说明
//1. MAX 就是带参数的宏
//2. (a,b) 就是形参
//3.  (a>b) ? a : b是带参数的宏对应字符串,该字符串中可以使用形参
#define MAX(a,b) (a>b) ? a : b
int main(){int x , y, max;printf("input two numbers: ");scanf("%d %d", &x, &y);//说明//1.  MAX(x, y); 调用带参数宏定义//2.  在宏替换时(预处理,由预处理器), 会进行字符串的替换,同时会使用实参, 去替换形参//3. 即MAX(x, y) 宏替换后  (x>y) ? x : ymax = MAX(x, y);printf("max=%d\n", max);getchar();getchar();return 0;
}




#include <stdio.h>
#include <stdlib.h>int SQ(int y){ //函数, 求y的平方return ((y)*(y));
}int main(){int i=1;while(i<=5){printf("%d^2 = %d\n", i-1, SQ(i++)); //  i++ ——》 i-1 等价于  i}system("pause");return 0;
}





预处理命令 || 宏定义 || 带参数的宏定义相关推荐

  1. 定义带参数的宏来求三角形的面积

    <程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p241 习题7 13.三角形的面积为,其中sqrt( s * (s-a) (s-b) (s-c) ), ...

  2. 【C语言】宏定义(不带参数的宏定义和带参数的宏定义)

    目录 一.不带参数的宏定义 1.定义 2.#undef 指令取消宏定义 二.带参数的宏定义 1.定义 2.宏定义参数替换的注意事项 三.带参数的宏定义和带参函数的区别 一.不带参数的宏定义 1.定义 ...

  3. 编译预处理 -- 带参数的宏定义--【原创】

    如有转载请注明出处 编译预处理  --  带参数的宏定义 前面为输出文件,后面为输入文件 gcc -E -o test.i test.c gcc -o test  test.i test.c test ...

  4. python用海伦公式求面积_用带参数的宏定义,通过海伦公式求三角形的面积

    要求: 海伦公式: ,其中 ,a,b,c为三角形的三个边.定义两个带参数的宏,一个用来求p,另一个用来求s 题目分析: 首先,题目要求是通过输入三角形的三条边,输出三角形的面积.因为不是任意的三条边都 ...

  5. 编程题:带参数的宏定义来实现,求圆的周长和面积。

    编程题:带参数的宏定义来实现,求圆的周长和面积. #include<stdio.h> #define PI 3.14159 #define L(r) 2*PI*(r) #define S( ...

  6. mysql宏参数_C语言带参数的宏定义

    C语言允许宏带有参数.在宏定义中的参数称为"形式参数",在宏调用中的参数称为"实际参数",这点和函数有些类似. 对带参数的宏,在展开过程中不仅要进行字符串替换, ...

  7. 如何定义一个带参数的宏

    开发中我们经常会遇到一些需要封装起来的简单函数 比如说:有两个数,通过调用一个宏去返回较大的数 或者:通过输入三原色(RGB)的值去输出一个自己的颜色 这中做法比较常用  下面就来说一下这种带参数的宏 ...

  8. Java 方法的概述-方法的定义-带参数的方法

    方法概述 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集1.方法必须先创建才可以使用,该过程成为方法定义 2.方法创建后并不是直接可以运行的,需要手动使用后才执 ...

  9. c++ 带参数的宏定义实现反射机制

    lua 这种脚本语言用久了,总觉得反射机制就应该理所当然的嵌入在语言特性里. 比如希望根据自己传的类型名变量,动态去 new 一些实例.在 lua ,js 里做起来就非常简单,然而在 c++里面做起来 ...

最新文章

  1. CSS3 稳固而知新: 居中
  2. Python将彩色图转换为灰度图
  3. 成功解决ValueError: Cannot feed value of shape (1, 10, 4) for Tensor Placeholder:0 , which has shape
  4. pdo mysql分页_php运用PDO连接数据库,实现分页效果
  5. 砍掉九成代码,重构并简化YOLOv5图像目标检测推理实现
  6. python sorted下标_Python列表操作最全面总结
  7. C#的多线程机制探索7
  8. CMS 和 G1 收集器比较
  9. invalid use of incomplete type 报
  10. windwos开机自启动脚本
  11. JS设计模式——12.装饰者模式
  12. mysql视图可以完成的操作_MySQL视图操作
  13. Typinator for mac(打字员)附注册码支持m1
  14. 20190911每日一句
  15. 网站抓取精灵V3.0正式版
  16. 一文讲清楚【KL距离】、【torch.nn.functional.kl_div()】和【torch.nn.KLDivLoss()】的关系
  17. 网络互联课程设计(校园网和企业网)
  18. Elasticsearch系列—倒排索引原理
  19. python测试用例设计方法_功能测试用例设计方法分享
  20. Qpython教程和软件下载(Android手机学习python的平台利器)

热门文章

  1. 95% CI, 置信区间 Confidence Interval
  2. 通讯框架 t-io 学习——websocket 部分源码解析
  3. noip模拟赛 Chtholly Nota Seniorious
  4. 思路拓展,如果是用2D的方式去做切割
  5. SSIS同步多个数据库
  6. 软件工程——理论、方法与实践⑨
  7. 采用流水线技术实现8位加法器
  8. Gimmie — 一个创新的 GNOME 面板按次
  9. Android系统之Broadcom GPS 移植
  10. 杀毒软件引起的WinCE编译出错问题