1.5 C语言程序的运行过程
01 源程序:由高级语言或汇编语言编写,C语言源程序的扩展名为.C
02 目标程序:源程序经“编译程序”翻译所得的二进制代码为目标程序,其扩展名为.obj
03 可执行程序:目标程序与库函数连接,形成可执行程序,.out
#include <stdio.h> int main() { #define PI 3.14 double r,len,area; printf("请输入半径:\n"); // 提示用户输入半径 scanf("%lf",&r); // 接受数据 len = 2*PI*r; area = PI*r*r; printf("len=%lf,area=%lf\n",len,area); return 0; }
1.6 C语言中的宏定义
01 不带参数的宏定义
#define 标示符 字符串
l #代表这是一条预处理命令
l 标示符为所定义的宏名,一般用大写字母表示
l 字符串可以是常数,表达式,格式串等
l 宏定义不是语句,再行末不加分号,如果加上分号则连分号一起替换
l 宏定义的作用域从宏定义命令开始到源程序结束,若要终止其作用域可以用#undef
l 宏定义用宏名表示一个字符串,在宏展开时又以该字符串取代宏名,只是简单的替换
l 宏名在源程序中若用双引号括起来,则不对其进行宏展开
l 宏定义不进行内存分配,只进行字符替换
l 宏定义可以嵌套
#include <stdio.h> #define PI 3.14 #define R 3.0 #define L 2*PI*R #define AR PI*R*R int main() { double len; double area; len = L; area = AR; printf("len=%lf,area=%lf\n",len,area); return 0; }
02 带参数的宏定义
#define 宏名(形参表)字符串
l 宏名和形参表之间不能出现空格
l 通常将形参用小括号括起来,还将字符串也用小括号括起来
// 输入半径,计算圆的周长和面积 #include <stdio.h> #define PI 3.14 #define L(r) 2*PI*r #define S(r) PI*r*r int main() { double x,len,area; printf("输入半径:\n"); scanf("%lf",&x); len = L(x); area = S(x); printf("len=%lf,area=%lf\n",len,area); return 0; }
时间: 2025-01-14 12:42:10