我在看vb程序的时候有cdate,cstr,cint 函数,我想问一下,它们的作用是什么

解决方案 »

  1.   

    這些函數可強制一個運算式轉成特定的資料型態。Dim MyDate, MyShortDate, MyTime, MyShortTime
    MyDate = "February 12, 1969"   ' 定義日期。
    MyShortDate = CDate(MyDate)   ' 轉換成 Date 資料型態。MyTime = "4:35:47 PM"   ' 定義時間。
    MyShortTime = CDate(MyTime)   ' 轉換成 Date 資料型態。
    Dim MyDouble, MyString
    MyDouble = 437.324   ' MyDouble 為 Double 型態。
    MyString = CStr(MyDouble)   ' MyString 的內容為 [437.324]。Dim MyDouble, MyInt
    MyDouble = 2345.5678   ' MyDouble 為 Double 型態。
    MyInt = CInt(MyDouble)   ' MyInt 的值為 2346。
      

  2.   

    每个函数都可以强制将一个表达式转换成某种特定数据类型。
    CDate:强制转换成日期型Date
    CStr:强制转换成字符串型String
    CInt:强制转换成整型Integer例如:CDate 函数示例
    本示例使用 CDate 函数将字符串转换成 Date。一般说来,字符串格式的日期与时间硬编码(如示例中所示)并不好。较好的做法是使用日期原义表达式和时间的原义表达式(如 #2/12/1969#,#4:45:23 PM#)。Dim MyDate, MyShortDate, MyTime, MyShortTime
    MyDate = "February 12, 1969"   ' 定义日期。
    MyShortDate = CDate(MyDate)   ' 转换为 Date 数据类型。MyTime = "4:35:47 PM"   ' 定义时间。
    MyShortTime = CDate(MyTime)   ' 转换为 Date 数据类型。
      

  3.   

    函数名称决定返回类型,如下所示:函数 返回类型 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.94065645841247E-324;正数从 4.94065645841247E-324 至 1.79769313486232E308。 
    CDec Decimal 零变比数值,即无小数位数值,为 
    +/-79,228,162,514,264,337,593,543,950,335。对于 28 位小数的数值,范围则为 
    +/-7.9228162514264337593543950335;最小的可能非零值是 0.0000000000000000000000000001。 
    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 相同。 
      

  4.   

    类型转换函数
          每个函数都可以强制将一个表达式转换成某种特定数据类型。语法
    CBool(expression)CByte(expression)CCur(expression)CDate(expression)CDbl(expression)CDec(expression)CInt(expression)CLng(expression)CSng(expression)CStr(expression)CVar(expression)CStr(expression)必要的 expression 参数可以是任何字符串表达式或数值表达式。返回类型
    函数名称决定返回类型,如下所示:函数 返回类型 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.94065645841247E-324;正数从 4.94065645841247E-324 至 1.79769313486232E308。 
    CDec Decimal 零变比数值,即无小数位数值,为 
    +/-79,228,162,514,264,337,593,543,950,335。对于 28 位小数的数值,范围则为 
    +/-7.9228162514264337593543950335;最小的可能非零值是 0.0000000000000000000000000001。 
    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 超过转换目标数据类型的范围,将发生错误。通常,在编码时可以使用数据类型转换函数,来体现某些操作的结果应该表示为特定的数据类型,而不是缺省的数据类型。例如,当单精度、双精度或整数运算发生的情况下,使用 CCur 来强制执行货币运算。应该使用数据类型转换函数来代替 Val,以使国际版的数据转换可以从一种数据类型转换为另一种。例如,当使用 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 子类型。