vb中函数问题

我要求Text1中输入的数的sin一下3个程序有什么区别ConstPI=3.14159a=Sin(((Text1.Text)*PI)/180)ConstPI=3.1415... 我要求Text1中输入的数的sin
一下3个程序有什么区别
Const PI = 3.14159
a = Sin(((Text1.Text) * PI) / 180)

Const PI = 3.14159
a = Sin((val(Text1.Text) * PI) / 180)

Const PI = 3.14159
a = Sin((cint(Text1.Text) * PI) / 180)

在文本框中输入的数在写程序的时候什么时候要加val
展开
 我来答
kracule
2009-09-12 · TA获得超过2085个赞
知道小有建树答主
回答量:618
采纳率:0%
帮助的人:426万
展开全部
Val 函数

返回包含于字符串内的数字,字符串中是一个适当类型的数值。

语法

Val(string)

必要的 string 参数可以是任何有效的字符串表达式.

说明

Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号 &O(八进制)和 &H(十六进制)。空白、制表符和换行符都从参数中被去掉。

下面的返回值为 1615198:

Val(" 1615 198th Street N.E.")

在下面的代码中,Val 为所示的十六进制数值返回十进制数值 -1。

Val("&HFFFF")

注意 Val 函数只会将句点(.)当成一个可用的小数点分隔符。当使用不同的小数点分隔符时,如在国际版应用程序中,代之以 CDbl 来把字符串转换为数字。

类型转换函数
每个函数都可以强制将一个表达式转换成某种特定数据类型。

语法
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 子类型。
华夏日长兴
2009-09-12 · TA获得超过9595个赞
知道大有可为答主
回答量:6305
采纳率:85%
帮助的人:4204万
展开全部
文本框的内容是文本类型的,文本类型的变量参与加减乘除运算的时候是不能被许可的,需要转换成数字类型的变量才能使用,而val和cint的作用就是提供转换文本为数字的函数。
val和cint转换的结果是有区别的,比如说“1.22”用val转换后结果就是1.22 ,而用cint处理后就变成了1

以上,希望对你有所帮助!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiayu50000
2009-09-12 · 超过55用户采纳过TA的回答
知道答主
回答量:184
采纳率:100%
帮助的人:0
展开全部
a = Sin(((Text1.Text) * PI) / 180)
此时如果Text1.Text不是数的话,会出错!
a = Sin((val(Text1.Text) * PI) / 180)
此时用VAL函数将Text1.Text转成数,如果Text1.Text不是数则被转为0
a = Sin((cint(Text1.Text) * PI) / 180)
此时用CINT函数将Text1.Text转成整数
VAL()与CINT()区别
VAL 转成数不改变数的大小
而CINT 则取其整数部分
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qjmfktlf
2009-09-12 · 超过24用户采纳过TA的回答
知道答主
回答量:321
采纳率:0%
帮助的人:211万
展开全部
要转换数值的时候加Val
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hesipu123
2009-09-12 · 超过10用户采纳过TA的回答
知道答主
回答量:84
采纳率:0%
帮助的人:42万
展开全部
函数声明不一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式