手机建站哪家好,php外贸网站建设,有没有专门做平铺素材的网站,网站开发的毕设开题报告本文参考C Primer Plus第四章学习 文章目录 常量和预处理器const限定符 1. 常量和预处理器 有时#xff0c;在程序中要使用常量。例如#xff0c;可以这样计算圆的周长#xff1a; circumference 3.14159 * diameter; 这里#xff0c;常量3.14159 代表著名的常量 pi(π)。… 本文参考C Primer Plus第四章学习 文章目录 常量和预处理器const限定符 1. 常量和预处理器 有时在程序中要使用常量。例如可以这样计算圆的周长 circumference 3.14159 * diameter; 这里常量3.14159 代表著名的常量 pi(π)。在该例中输入实际值便可使用这个常量。然而这种情况使用符号常量symbolic constant)会更好。也就是说使用下面的语句计算机稍后会用实际值完成替换 circumference pi * diameter; 为什么使用符号常量更好首先常量名比数字表达的信息更多。请比较以下两条语句: owed 0.015 * housevalue; owed taxrate * housevalue; 如果阅读一个很长的程序第2条语句所表达的含义更清楚。 另外假设程序中的多处使用一个常量有时需要改变它的值。毕竟税率通常是浮动的。如果程序使用符号常量则只需更改符号常量的定义不用在程序中查找使用常量的地方然后逐一修改。 那么如何创建符号常量方法之一是声明一个变量然后将该变量设置为所需的常量。可以这样写。 float taxrate; taxrate 0.015; 这样做提供了一个符号名但是taxrate 是一个变量程序可能会无意间改变它的值。C语言还提供了一个更好的方案——C预处理器。第2章中介绍了预处理器如何使用#include 包含其他文件的信息,预处理器也可用来定义常量。只需在程序顶部添加下面一行 #define TAXRATE 0.015 编译程序时程序中所有的 TAXRATE 都会被替换成 0.015。这一过程被称为编译时替换compile-time substitution)。在运行程序时程序中所有的替换均已完成。通常这样定义的常量也称为明示常量manifest constant)。 请注意格式首先是#define接着是符号常量名TAXRATE然后是符号常量的值0.015注意其中并没有符号)。所以其通用格式如下 #define NAME value 实际应用时用选定的符号常量名和合适的值来替换 NAME 和value。注意末尾不用加分号因为这是一种由预处理器处理的替换机制。为什么TAXRATE要用大写用大写表示符号常量是C语言一贯的传统。这样在程序中看到全大写的名称就立刻明白这是一个符号常量而非变量。大写常量只是为了提高程序的可读性即使全用小写来表示符号常量程序也能照常运行。尽管如此初学者还是应该养成大写常量的好习惯。 另外还有一个不常用的命名约定即在名称前带c或k_前缀来表示常量如c_level或k_line)。 符号常量的命名规则与变量相同。可以使用大小写字母、数字和下划线字符首字符不能为数字。
#includestdio.h
#define PI 3.14159
int main(void)
{float area,circum,radius;printf(What is the radius of your pizza?\n);scanf(%f,radius);areaPI*radius*radius;circum2.0*PI*radius;printf(Your basic pizza parameters are as follows:\n);printf(circumference%1.2f,area%1.2f\n,circum,area);return 0;
} %1.2f表明结果被四舍五入为两位小数输出。 #define指令还可定义字符和字符串常量。前者使用单引号后者使用双引号 #define BEEP \a #define TEE T #define ESC \033 #define 00P Now you have done it! 记住符号常量名后面的内容被用来替换符号常量。 #define TOES20 /*错误的格式*/ 如果这样做替换TOES的是20而不是20。
2.const限定符 const int MONTHS 12; //MONTHS在程序中不可更改值为12 这使得MONTHS成为一个只读值。也就说可以在计算中使用MONTHS可以打印MONTHS但是不能更改MONTHS。const用起来比#define更灵活。 下一节会详细学习printf()函数和scanf()函数一起努力吧