📄 a980405.gb_
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>初级篇: 资料型别的注意事项?</TITLE>
<META NAME="GENERATOR" CONTENT="Mozilla/3.01Gold (Win95; I) [Netscape]">
<META NAME="Author" CONTENT="KJ Wang">
</HEAD>
<BODY TEXT="#202020" BGCOLOR="#FFFFFF" LINK="#FF0000" VLINK="#000080" ALINK="#FF0000">
<H2 ALIGN=CENTER><A HREF="vbba.htm">新观念的 VB5 教本</A></H2>
<H3 ALIGN=CENTER><A HREF="../vbweeks.htm">每周一问</A>: 挑战您的 VB 功力 (初级篇, 98/04/05)</H3>
<H2>
<HR WIDTH="100%"></H2>
<TABLE WIDTH="100%" >
<TR VALIGN=TOP>
<TD NOWRAP>Q:</TD>
<TD><FONT COLOR="#000080">Dim x, y, z As Integer</FONT>
<P><FONT COLOR="#000080">x = "10"<BR>
y = "13"<BR>
z = "13"</FONT></P>
<P><FONT COLOR="#000080">If x + y = x + z Then ...</FONT></P>
<P>结果以上判断式會得到 False, 为什麼?</P>
</TD>
</TR>
<TR VALIGN=TOP>
<TD>A:</TD>
<TD>请注意 Dim x, y, z As Integer 等於
<UL>
<P>Dim x <FONT COLOR="#008000">'不定型型别<BR>
</FONT>Dim y <FONT COLOR="#008000">'不定型型别<BR>
</FONT>Dim z As Integer</P>
</UL>
<P>所以 x + y 等於 "1013", 但 x + z 等於 "10" + 13
= 23, 当然 x + y 就不等於 x + z 了。</P>
<P>要避免以上的问题, 常见的方法是规规矩矩地宣告每一个变数的型别, 但如果您写的是
VB Script 程式, 则由於 VB Script 的变数都只能宣告成 Dim x 格式的不定型型别,
所以采用的方法是:</P>
<UL>
<P>CInt(x) ' 将 x 转成 Integer 型别, 然後传回<BR>
CInt(y) ' 将 y 转成 Integer 型别, 然後传回<BR>
CInt(z) ' 将 z 转成 Integer 型别, 然後传回</P>
</UL>
<P>除了 CInt 之外, 用来转换资料型别的含有还有: </P>
<UL>
<PRE><FONT SIZE=+1>CBool(X) 将变数 X 转换成 Boolean 型别
CByte(X) 将变数 X 转换成 Byte 型别
CCur(X) 将变数 X 转换成 Currency 型别
CDate(X) 将变数 X 转换成 Date 型别
CDbl(X) 将变数 X 转换成 Double 型别
CLng(X) 将变数 X 转换成 Long 型别
CSng(X) 将变数 X 转换成 Single 型别
CStr(X) 将变数 X 转换成 String 型别 </FONT></PRE>
</UL>
</TD>
</TR>
</TABLE>
<P>
<HR WIDTH="100%"></P>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -