Board logo

标题: Cstr函数和Str函数的区别 [打印本页]

作者: fghser    时间: 2007-9-16 21:58     标题: Cstr函数和Str函数的区别

Cstr函数和Str函数的区别?
答:
Cstr在将正数转换为数字字符串时,不在其前加:前导空格来暗示其正号;
而Str在将正数转换为数字字符串时,返回的字符串包含一前导空格暗示有一正号。

举例如下:
    Dim i As Single
    Dim cstr As String
    Dim str As String
    i = 10.3
    cstr = CStr(i)
    str = Str(i)
    Print Len(cstr), Len(str) '输出:4  5
    i = -10.3
    cstr = CStr(i)
    str = Str(i)
    Print Len(cstr1), Len(str1) '输出:5  5
简单的讲:
    Cstr(10.3)="10.3" Str(10.3)=" 10.3"
    Cstr(-10.3)="-10.3" Str(-10.3)="-10.3"

改错中,要当心,如果采用Str将正数转换为数字字符串,那么对该字符串在进行
逐位处理时,其循环次数将多了一次。

另外:
按照MSDN介绍,通常Cstr后参数类型比较广泛,即:可以将Boolean,Date,Empty,数值转化为字符串。
而str后参数通常应该为数值。
但是根据实际测试,也不尽然。
请看下例:
    Private Sub Command1_Click()
        Dim t As Boolean
        Print Str(t)    '输出 False(前面有空格)
        Print CStr(t)   '输出False(前面没有空格)
    End Sub
最后输出结果是:
False
False

因此,Str总会在其参数前加上一位用于存放符号位,当然如果参数为负数,其已经包含负号,那么就不加了。
如: str("-10.3")="-10.3"
作者: z9o0g8u6g4q    时间: 2010-11-20 04:10

因为帖子太长啦,所以先顶了在看啦~~~
作者: z6k9y9q1o4l    时间: 2010-12-16 01:19

诶~~  受不鸟  明天给你加分~~




欢迎光临 珩源工控论坛 (http://bbs.hymcu.com/) Powered by Discuz! 7.2