C语言及程序设计进阶例程-8 预处理之宏定义

简介: 贺老师教学链接  C语言及程序设计进阶 本课讲解宏定义#include <stdio.h>#define PI 3.1415926 int main ( ){ float r,l,s,sq,vq; printf("please enter r:"); scanf("%f", &r); l=2 * PI *r; s=r * r * PI;

贺老师教学链接  C语言及程序设计进阶 本课讲解


宏定义

#include <stdio.h>
#define PI 3.1415926 
int main ( )
{
  float r,l,s,sq,vq;
  printf("please enter r:");
  scanf("%f", &r);
  l=2 * PI *r;	
  s=r * r * PI;	
  sq=4* PI * r * r;
  ……
} 


带参数的宏定义
#include <stdio.h>
#define S(a,b) a*b
int main()
{
    printf("矩形1面积: %d\n", S(2, 4));
    printf("矩形2面积: %.2f\n", S(2.3, 4.5));
    return 0;
}


谨慎带参数的宏定义的副作用

#include <stdio.h>
#define PI 3.1415926
#define S(r) PI*r*r
int main( )
{
    float a, area, b;
    a=1;
    b=2;
    area=S(a+b);
    printf("r=%.2f, area=%.2f\n", a+b, area);
    return 0;
}


目录
相关文章
|
30天前
|
存储 编译器 Linux
c语言进阶(2)
c语言进阶(2)
26 0
|
1月前
|
C语言
【进阶C语言】数组笔试题解析
【进阶C语言】数组笔试题解析
17 0
|
1月前
|
存储 程序员 C语言
【进阶C语言】C语言文件操作
【进阶C语言】C语言文件操作
42 0
|
11天前
|
存储 测试技术 C语言
【C语言进阶】 假期测评③
【C语言进阶】 假期测评③
38 1
|
27天前
|
存储 文件存储 C语言
《C语言程序设计》课程设计 -- 火车票票务管理系统
《C语言程序设计》课程设计 -- 火车票票务管理系统
22 1
|
27天前
|
存储 程序员 数据处理
C语言进阶
C语言进阶
|
28天前
|
存储 C语言
C语言顺序结构程序设计
C语言顺序结构程序设计
21 0
|
30天前
|
存储 缓存 安全
c语言进阶(1)
c语言进阶(1)
19 0
|
1月前
|
存储 编译器 程序员
【程序环境和预处理】C语言
【程序环境和预处理】C语言
|
1月前
|
存储 C语言 C++
【指针的进阶】C语言
【指针的进阶】C语言