第十一章 基本數(shù)據(jù)類型 基本數(shù)據(jù)類型是其它各種數(shù)據(jù)類型的基本構成部分。 11.1 常數(shù) 避免"奇異數(shù)"(magic numbers)?!捌娈悢?shù)”指的是出現(xiàn)在程序中間的不加解釋的常數(shù)。 11.2 整型數(shù) 在進行整型加法或乘法運算時,應明確可能的最大整型數(shù)。 有符號8位 -128到127 無符號8位 0到255 有符號16位 -32768到32767 無符號16位 0到65535 有符號32位 -2,147,483,648到2,147,483,647 無符號32位 0到4,294,967,295 11.3 浮點數(shù) 以下是使用浮點數(shù)時需要特殊考慮的一些問題: 不要在數(shù)量級相差太大的數(shù)之間進行加減運算。 避免相等比較。 防止舍入誤差。 以下是用于解決舍入誤差問題的一些方法: 首先,將變量轉換為精度更高的變量類型。 第二,將變量轉換為二—─十進制(BCD)變量。 第三,將變量從浮點型轉化為整型的。 11.4 字符和字符串 奇異字符串則是指常量字符串。程序中應避免“奇異字符和字符串”;程序中應警惕邊界錯誤。 11.5 邏輯變量 使用邏輯變量來說明程序。 使用邏輯變量來簡化復雜的判斷。 如果必要的話,建立自己的邏輯類型。 11.6 枚舉類型 枚舉類型是允許對某一類對象的每一個成員都用英語來進行描述類型。 11.7 命名常量 使用命名常量是一種對程序進行參數(shù)化的方法——把程序可能變動的地方放入?yún)?shù)中,一旦真的需要變動時,只要在一處修改參數(shù)而不必在整個程序中到處進行修改。 11.8 數(shù)組 數(shù)組是最簡單也是最常見的結構化數(shù)據(jù)。 在C中,使用ARRAY_LENGTH( )宏來處理數(shù)組: #define ARRAY_LENGTH( x ) (sizeof(x)/sizeof(x[0])) 11.9 指針 每個指針包括兩部分: 內存存儲單元及對這個存儲單元中內容的解釋。 內存中的存儲單元就是地址, 解釋存儲單元中內容的基礎是指針的基本類型。 需要采取兩個步驟來防止指針錯誤: 首先應防止引入指針錯誤 其次應盡可能早地發(fā)現(xiàn)指針錯誤 下面是怎樣才能達到這兩個目的的一些方法: 把指針操作獨立在子程序中 在使用指針之前對它進行檢查 在使用變量之前應先檢查一下這一變量 使用標記字段來查找錯誤內存 使用顯示冗余技術 使用額外的指針變量以增加清晰性 簡化復雜的指針表達式 編寫跟蹤指針存儲單元的子程序 C中的指針 應使用顯式指針類型而不是缺省類型 避免強制類型轉換 遵守參數(shù)傳遞的星號規(guī)則 |
|
來自: cupid8505 > 《我的學習之代碼大全》