C語言中的符號常量
在結束討論溫度轉換程序前,我們再來看一下符號常量。在程序中使用 300、20 等類似的“幻數”并不是一個好習慣,它們幾乎無法向以后閱讀該程序的人提供什么信息,而且使程序的修改變得更加困難。處理這種幻數的一種方法是賦予它們有意義的名字。#define 指令可以把符號名(或稱為符號常量)定義為一個特定的字符串:
#define 名字 替換文本
在該定義之后,程序中出現的所有在 #define 中定義的名字(既沒有用引號引起來,也不是其它名字的一部分)都將用相應的替換文本替換。其中,名字與普通變量名的形式相同:它們都是以字母打頭的字母和數字序列;替換文本可以是任何字符序列,而不僅限于數字。
在該定義之后,程序中出現的所有在 #define 中定義的名字(既沒有用引號引起來,也不是其它名字的一部分)都將用相應的替換文本替換。其中,名字與普通變量名的形式相同:它們都是以字母打頭的字母和數字序列;替換文本可以是任何字符序列,而不僅限于數字。
#include <stdio.h>#define LOWER 0 /* lower limit of table */#define UPPER 300 /* upper limit */#define STEP 20 /* step size *//* print Fahrenheit-Celsius table */main(){ int fahr; for (fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP) printf("%3d %6.1f/n", fahr, (5.0/9.0)*(fahr-32));}
其中,LOWER、UPPER 與 STEP 都是符號常量,而非變量,因此不需要出現在聲明中。符號常量名通常用大寫字母拼寫,這樣可以很容易與用小寫字母拼寫的變量名相區別。注意,#define 指令行的末尾沒有分號。
變量與算術表達式
我們來看下一個程序,使用公式℃=(5/9)(亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb