3.3 VB的公共函數(shù)
1. 數(shù)學(xué)函數(shù)
VB中常用的數(shù)學(xué)函數(shù)
函數(shù)名
功能
示例
結(jié)果
Sqr(x)
求平方根
Sqr(9)
3
Log(x)
求自然對(duì)數(shù),x>0
Log(10)
2.3
Exp(x)
求以e為底的冪值,即求ex
Exp(3)
20.086
Abs(x)
求x的絕對(duì)值
Abs(-2.5)
2.5
Hex[$](x)
求x的十六進(jìn)制數(shù),返回的是字符型值
Hex[$](28)
"1C"
Oct[$](x)
求x的八進(jìn)制數(shù),返回的是字符型值
Oct[$](10)
"12"
Sgn(x)
求x的符號(hào), 當(dāng)x>0, 返回1 ;x=0, 返回0; x<0, 返回-1
Sgn(15)
1
Rnd(x)
產(chǎn)生一個(gè)在(0,1)區(qū)間均勻分布的隨機(jī)數(shù),每次的值都不同;若x=0,則給出的是上一次本函數(shù)產(chǎn)生的隨機(jī)數(shù)
Rnd(x)
0-1之間的數(shù)
Sin(x)
求x的正弦值,x的單位是弧度
Sin(0)
0
Cos(x)
求x的余弦值,x的單位是弧度
Cos(1)
0.54
Tan(x)
求x的正切值,x的單位是弧度
Tan(1)
1.56
Atn(x)
求x的反正切值,x的單位是弧度,函數(shù)返回的是弧度值
Atn(1)
0.79
2. 字符函數(shù)
(1)字符串編碼
在Windows采用的DBCS(Double Byte Character Set)編碼方案中,一個(gè)漢字在計(jì)算機(jī)內(nèi)存中占2個(gè)字節(jié),一個(gè)西文字符(ASCII碼)占1個(gè)字節(jié),但在VB中采用的是Unicode(ISO字符標(biāo)準(zhǔn))來存儲(chǔ)字符的,所有字符都占2個(gè)字節(jié)。為方便使用,可以用StrConv函數(shù)來對(duì)Unicode 與DBCS進(jìn)行轉(zhuǎn)換,可以用函數(shù)Len()函數(shù)求字符串的字符數(shù),用 LenB()函數(shù)求字符串的字節(jié)數(shù)。
(2)常用的字符串函數(shù)
函數(shù)名
功能
示例
結(jié)果
Len(x)
求x字符串的字符長(zhǎng)度(個(gè)數(shù))
Len("ab技術(shù)")
4
LenB(x)
求x字符串的字節(jié)個(gè)數(shù)
LenB("ab技術(shù)")
8
Left(x,n)
從x字符串左邊取n個(gè)字符
Left("ABsYt",2)
"AB"
Right(x,n)
從x字符串右邊取n個(gè)字符
Right("ABsYt",2)
"Yt"
Mid(x,n1,n2)
從x字符串左邊第n1個(gè)位置開始向右取n2個(gè)字符
Mid("ABsYt",2,3)
"BsY"
Ucase(x)
將x字符串中所有小寫字母改為大寫
Ucase("ABsYug")
ABSYUG
Lcase(x)
將x字符串中所有大寫字母改為小寫
Ucase("ABsYug")
absyug
Ltrim(x)
去掉x左邊的空格
Lrim(" ABC ")
"ABC "
Rtrim(x)
去掉x右邊的空格
Trim(" ABC ")
" ABC"
Trim(x)
去掉x兩邊的空格
Trim(" ABC ")
"ABC"
Instr(x,"字符", M)
在x中查找給定的字符,返回該字符在x中的位置,M=1不區(qū)分大小寫,省略則區(qū)分
Instr("WBAC","B")
2
String(n,"字符")
得到由n個(gè)首字符組成的一個(gè)字符串
String(3,"abcd")
"aaa"
Space (n)
得到n個(gè)空格
Space (3)
"□□□"
Replace(C,C1,C2,N1,N2)
在C字符串中從N1開始將C2替代N2次C1,如果沒有N1表示從1開始
Replace("ABCASAA","A","12",2,2)
"ABC12S12A"
StrReverse (C)
將字符串反序
StrReverse ("abcd")
"dcba"
3. 日期與時(shí)間函數(shù)
常用的日期與時(shí)間函數(shù)
函數(shù)名
含義
示例
結(jié)果
Date ()
返回系統(tǒng)日期
Date ()
02-3-19
Time()
返回系統(tǒng)時(shí)間
Time()
3:30 :00 PM
Now
返回系統(tǒng)時(shí)間和日期
Now
02-3-19 3:30 :00
Month(C)
返回月份代號(hào)(1-12)
Month("02,03,19")
3
Year(C)
返回年代號(hào)(1752-2078)
Year("02-03-19")
2002
Day(C)
返回日期代號(hào)(1-31)
Day("02,03,19")
19
MonthName(N)
返回月份名
MonthName(1)
一月
WeekDay()
返回星期代號(hào)(1-7),星期日為1
WeekDay("02,03,17")
1
WeekDayName(N)
根據(jù)N返回星期名稱, 1為星期日
WeekDayName(4)
星期三
增減日期函數(shù): DateAdd(要增減日期形式,增減量,要增減的日期變量)
例:計(jì)算期末考試日期:DateAdd("ww",15,#2002/3/19#)
求日期之差函數(shù): DateDiff(要間隔日期形式,日期一,日期二)
例:計(jì)算距畢業(yè)天數(shù): DateDiff("d", Now, #2005/6/30#)
日期形式
日期形式
yyyy
q
m
y
d
w
ww
h
n
s
意義
年
季
月
一年的天數(shù)
日
一周的天數(shù)
星期
時(shí)
分
秒
4. 轉(zhuǎn)換函數(shù)
函數(shù)名
功能
示例
結(jié)果
Str (x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成字符串
Str (45.2)
"45.2"
Val(x)
將字符串x中的數(shù)字轉(zhuǎn)換成數(shù)值
Val("23ab")
23
Chr(x)
返回以x為ASCII碼的字符
Chr(65)
"A"
Asc(x)
給出字符x的ASCII碼值,十進(jìn)制數(shù)
Asc("a")
97
Cint(x)
將數(shù)值型數(shù)據(jù)x的小數(shù)部分四舍五入取整
Cint(3.6)
4
Int(x)
取小于等于x的整數(shù)
Int(-3.5)
Int(3.5)
-4
3
Fix(x)
將數(shù)值型數(shù)據(jù)x的小數(shù)部分舍去
Fix(-3.5)
- 3
CBool(x)
將任何有效的數(shù)字字符串或數(shù)值轉(zhuǎn)換成邏輯型
CBool(2) CBool("0")
True
False
CByte(x)
將0-255之間的數(shù)值轉(zhuǎn)換成字節(jié)型
CByte(6)
6
CDate(x)
將有效的日期字符串轉(zhuǎn)換成日期
CDate(#1990,2,23#)
1990-2-23
CCur(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成貨幣型
CCur(25.6)
25.6
Round(x,N)
在保留N位小數(shù)的情況下四舍五入取整
Round(2.86,1)
2.9
CStr(x)
將x轉(zhuǎn)換成字符串型
CStr(12)
"12"
CVar(x)
將數(shù)值型數(shù)據(jù)x轉(zhuǎn)換成變體型
CVar("23")+"A"
"23A"
CSng(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成單精度型
CSng(23.5125468)
23.51255
CDbl(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成雙精度型
CDbl(23.5125468)
23.5125468
1. 數(shù)學(xué)函數(shù)
VB中常用的數(shù)學(xué)函數(shù)
函數(shù)名
功能
示例
結(jié)果
Sqr(x)
求平方根
Sqr(9)
3
Log(x)
求自然對(duì)數(shù),x>0
Log(10)
2.3
Exp(x)
求以e為底的冪值,即求ex
Exp(3)
20.086
Abs(x)
求x的絕對(duì)值
Abs(-2.5)
2.5
Hex[$](x)
求x的十六進(jìn)制數(shù),返回的是字符型值
Hex[$](28)
"1C"
Oct[$](x)
求x的八進(jìn)制數(shù),返回的是字符型值
Oct[$](10)
"12"
Sgn(x)
求x的符號(hào), 當(dāng)x>0, 返回1 ;x=0, 返回0; x<0, 返回-1
Sgn(15)
1
Rnd(x)
產(chǎn)生一個(gè)在(0,1)區(qū)間均勻分布的隨機(jī)數(shù),每次的值都不同;若x=0,則給出的是上一次本函數(shù)產(chǎn)生的隨機(jī)數(shù)
Rnd(x)
0-1之間的數(shù)
Sin(x)
求x的正弦值,x的單位是弧度
Sin(0)
0
Cos(x)
求x的余弦值,x的單位是弧度
Cos(1)
0.54
Tan(x)
求x的正切值,x的單位是弧度
Tan(1)
1.56
Atn(x)
求x的反正切值,x的單位是弧度,函數(shù)返回的是弧度值
Atn(1)
0.79
2. 字符函數(shù)
(1)字符串編碼
在Windows采用的DBCS(Double Byte Character Set)編碼方案中,一個(gè)漢字在計(jì)算機(jī)內(nèi)存中占2個(gè)字節(jié),一個(gè)西文字符(ASCII碼)占1個(gè)字節(jié),但在VB中采用的是Unicode(ISO字符標(biāo)準(zhǔn))來存儲(chǔ)字符的,所有字符都占2個(gè)字節(jié)。為方便使用,可以用StrConv函數(shù)來對(duì)Unicode 與DBCS進(jìn)行轉(zhuǎn)換,可以用函數(shù)Len()函數(shù)求字符串的字符數(shù),用 LenB()函數(shù)求字符串的字節(jié)數(shù)。
(2)常用的字符串函數(shù)
函數(shù)名
功能
示例
結(jié)果
Len(x)
求x字符串的字符長(zhǎng)度(個(gè)數(shù))
Len("ab技術(shù)")
4
LenB(x)
求x字符串的字節(jié)個(gè)數(shù)
LenB("ab技術(shù)")
8
Left(x,n)
從x字符串左邊取n個(gè)字符
Left("ABsYt",2)
"AB"
Right(x,n)
從x字符串右邊取n個(gè)字符
Right("ABsYt",2)
"Yt"
Mid(x,n1,n2)
從x字符串左邊第n1個(gè)位置開始向右取n2個(gè)字符
Mid("ABsYt",2,3)
"BsY"
Ucase(x)
將x字符串中所有小寫字母改為大寫
Ucase("ABsYug")
ABSYUG
Lcase(x)
將x字符串中所有大寫字母改為小寫
Ucase("ABsYug")
absyug
Ltrim(x)
去掉x左邊的空格
Lrim(" ABC ")
"ABC "
Rtrim(x)
去掉x右邊的空格
Trim(" ABC ")
" ABC"
Trim(x)
去掉x兩邊的空格
Trim(" ABC ")
"ABC"
Instr(x,"字符", M)
在x中查找給定的字符,返回該字符在x中的位置,M=1不區(qū)分大小寫,省略則區(qū)分
Instr("WBAC","B")
2
String(n,"字符")
得到由n個(gè)首字符組成的一個(gè)字符串
String(3,"abcd")
"aaa"
Space (n)
得到n個(gè)空格
Space (3)
"□□□"
Replace(C,C1,C2,N1,N2)
在C字符串中從N1開始將C2替代N2次C1,如果沒有N1表示從1開始
Replace("ABCASAA","A","12",2,2)
"ABC12S12A"
StrReverse (C)
將字符串反序
StrReverse ("abcd")
"dcba"
3. 日期與時(shí)間函數(shù)
常用的日期與時(shí)間函數(shù)
函數(shù)名
含義
示例
結(jié)果
Date ()
返回系統(tǒng)日期
Date ()
02-3-19
Time()
返回系統(tǒng)時(shí)間
Time()
3:30 :00 PM
Now
返回系統(tǒng)時(shí)間和日期
Now
02-3-19 3:30 :00
Month(C)
返回月份代號(hào)(1-12)
Month("02,03,19")
3
Year(C)
返回年代號(hào)(1752-2078)
Year("02-03-19")
2002
Day(C)
返回日期代號(hào)(1-31)
Day("02,03,19")
19
MonthName(N)
返回月份名
MonthName(1)
一月
WeekDay()
返回星期代號(hào)(1-7),星期日為1
WeekDay("02,03,17")
1
WeekDayName(N)
根據(jù)N返回星期名稱, 1為星期日
WeekDayName(4)
星期三
增減日期函數(shù): DateAdd(要增減日期形式,增減量,要增減的日期變量)
例:計(jì)算期末考試日期:DateAdd("ww",15,#2002/3/19#)
求日期之差函數(shù): DateDiff(要間隔日期形式,日期一,日期二)
例:計(jì)算距畢業(yè)天數(shù): DateDiff("d", Now, #2005/6/30#)
日期形式
日期形式
yyyy
q
m
y
d
w
ww
h
n
s
意義
年
季
月
一年的天數(shù)
日
一周的天數(shù)
星期
時(shí)
分
秒
4. 轉(zhuǎn)換函數(shù)
函數(shù)名
功能
示例
結(jié)果
Str (x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成字符串
Str (45.2)
"45.2"
Val(x)
將字符串x中的數(shù)字轉(zhuǎn)換成數(shù)值
Val("23ab")
23
Chr(x)
返回以x為ASCII碼的字符
Chr(65)
"A"
Asc(x)
給出字符x的ASCII碼值,十進(jìn)制數(shù)
Asc("a")
97
Cint(x)
將數(shù)值型數(shù)據(jù)x的小數(shù)部分四舍五入取整
Cint(3.6)
4
Int(x)
取小于等于x的整數(shù)
Int(-3.5)
Int(3.5)
-4
3
Fix(x)
將數(shù)值型數(shù)據(jù)x的小數(shù)部分舍去
Fix(-3.5)
- 3
CBool(x)
將任何有效的數(shù)字字符串或數(shù)值轉(zhuǎn)換成邏輯型
CBool(2) CBool("0")
True
False
CByte(x)
將0-255之間的數(shù)值轉(zhuǎn)換成字節(jié)型
CByte(6)
6
CDate(x)
將有效的日期字符串轉(zhuǎn)換成日期
CDate(#1990,2,23#)
1990-2-23
CCur(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成貨幣型
CCur(25.6)
25.6
Round(x,N)
在保留N位小數(shù)的情況下四舍五入取整
Round(2.86,1)
2.9
CStr(x)
將x轉(zhuǎn)換成字符串型
CStr(12)
"12"
CVar(x)
將數(shù)值型數(shù)據(jù)x轉(zhuǎn)換成變體型
CVar("23")+"A"
"23A"
CSng(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成單精度型
CSng(23.5125468)
23.51255
CDbl(x)
將數(shù)值數(shù)據(jù)x轉(zhuǎn)換成雙精度型
CDbl(23.5125468)
23.5125468

