CInt
CInt
CInt即返回表達式,此表達式已被轉換為Integer子類型的Variant。
CInt(expression)
expression參數是任意有效的表達式。
我們使用cint把a,b改為整數就行。
這必須改為:
CInt函數用於進行從其他數據類型到Integer子類型的國際公認的格式轉換。例如對十進位分隔符(如千分符)的識別,可能取決於系統的區域設置。
如果expression在Integer子類型可接受的範圍之外,則發生錯誤。
注意CInt與Fix和Int函數不同,后兩者將數字的分數部分截尾取整,而不是四捨五入。當分數部分恰好為0.5時,CInt函數通常將其四捨五入為最接近的偶數。例如,0.5被四捨五入為0,而1.5被四捨五入為2。
如下所示:
函數 | 返回類型 | expression參數範圍 |
CBool | Boolean | 任何有效的字元串或數值表達式。 |
CByte | Byte | 0至255。 |
CCur | Currency | -922,337,203,685,477.5808至922,337,203,685,477.5807。 |
CDate | Date | 任何有效的日期表達式。 |
CDbl | Double | 負數從-1.79769313486232E308至-4.94065645841E-324;正數從4.940656458412E-324至1.79769313486232E308。 |
CDec | Decimal | 零變比數值,即無小數位數值,為 +/-79,228,162,514,264,337,593,543,950,335。對於28位小數的數值,範圍則為 +/-7.9228162514264337593543950335; |
CInt | Integer | -32,768至32,767,小數部分四捨五入。 |
CLng | Long | -2,147,483,648至2,147,483,647,小數部分四捨五入。 |
CSng | Single | 負數為-3.402823E38至-1.401298E-45;正數為1.401298E-45至3.402823E38。 |
CStr | String | 依據expression參數返回Cstr。 |
CVar | Variant | 若為數值,則範圍與Double相同;若不為數值,則範圍與String相同。 |
必要的expression參數可以是任何字元串表達式或數值表達式。如果傳遞給函數的expression超過轉換目標數據類型的範圍,將發生錯誤。
通常,在編碼時可以使用數據類型轉換函數,來體現某些操作的結果應該表示為特定的數據類型,而不是預設的數據類型。例如,當單精度、雙精度或整數運算髮生的情況下,使用CCur來強制執行貨幣運算。
當小數部分恰好為0.5時,Cint和CLng函數會將它轉換為最接近的偶數值。例如,0.5轉換為0、1.5轉換為2。Cint和CLng函數不同於Fix和Int函數,Fix和Int函數會將小數部分截斷而不是四捨五入。並且Fix和Int函數總是返回與傳入的數據類型相同的值。
使用IsDate函數,可判斷date是否可以被轉換為日期或時間。Cdate可用來識別日期文字和時間文字,以及落入可接受的日期範圍內的數值。當轉換一個數字成為日期時,是將整數部分轉換為日期,小數部分轉換為從午夜起算的時間。
CDate依據系統上的國別設置來決定日期的格式。如果提供的格式為不可識別的日期設置,則不能正確判斷年、月、日的順序。另外,長日期格式,若包含有星期的字元串,也不能被識別。
CVDate函數也提供對早期Visual Basic版本的兼容性。CVDate函數的語法與CDate函數是完全相同的,不過,CVDate是返回一個Variant,它的子類型是Date,而不是實際的Date類型。因為剛開始已有真正的Date類型,所以CVDate也不再需要了。轉換一個表達式成為Date,再賦值給一個Variant,也可以達到同樣的效果。也可以使用這種技巧將其他真正的數據類型轉換為對等的Variant子類型。
注意CDec函數不能返回獨立的數據類型,而總是返回一個Variant,它的值已經被轉換為Decimal子類型。