版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章變量、常量、
數(shù)組與數(shù)據(jù)類型VB中的數(shù)據(jù)又以四種形式存儲(chǔ):變量、常量、數(shù)組和記錄,如表2-1所示。每一種都適合于不同的特定任務(wù)。名字能夠存儲(chǔ)的數(shù)據(jù)變量常量數(shù)組記錄一個(gè)可以改變的單值一個(gè)固定的單值多個(gè)同一數(shù)據(jù)類型的值多個(gè)不同數(shù)據(jù)類型的數(shù)據(jù)值表2-1 數(shù)據(jù)存儲(chǔ)形式2.1.1變量
在程序運(yùn)行期間,有一些數(shù)據(jù)是要經(jīng)常變化的,為了方便起見,就用變量來(lái)表示這些數(shù)據(jù),變量具有變量名和數(shù)據(jù)類型,為了使用變量,最好事先聲明這個(gè)變量,所謂的聲明變量就是定義變量名和變量類型。在定義變量時(shí)應(yīng)該注意以下幾點(diǎn):1、變量名必須以字母開頭。2、變量名中不能包含句號(hào)、空格、!、#、$、@、%、&、+、-等特殊字符。3、變量名長(zhǎng)度不得超過(guò)255個(gè)字符。4、變量名在同一個(gè)有效范圍內(nèi)必須是唯一的,不能重名,聲明變量要使用Dim語(yǔ)句。聲明變量格式:Dim/static變量名[As數(shù)據(jù)類型]如:DimXAsInteger‘聲明X為整形變量‘staticSumAsLong‘聲明“Sum”為一靜態(tài)變量,類型為長(zhǎng)整形。(靜態(tài)變量在過(guò)程結(jié)束后保存變量的值,下次使用時(shí)值不會(huì)喪失。)DimNameAsString‘聲明Name為字符串變量‘注:聲明一個(gè)變量后并不是在程序中的任何位置都可以使用,如果在一個(gè)過(guò)程的內(nèi)部聲明變量時(shí),只有過(guò)程內(nèi)部的代碼才能訪問或改變那個(gè)變量的值。如果在窗體代碼窗口的通用區(qū)域聲明一個(gè)變量,那么該變量可以在該窗體的任何事件過(guò)程中使用,叫做窗體級(jí)變量它只在窗體加載時(shí)執(zhí)行一次。如果在事件過(guò)程中聲明,需要在其它位置中也能使用,可以使用Public語(yǔ)句定義。2.1.2聲明變量例2-1-1Public(全局變量聲明)語(yǔ)句其語(yǔ)法格式為:Public變量名As數(shù)據(jù)類型如果在聲明變量時(shí)沒有指定數(shù)據(jù)類型,那么該變量會(huì)默認(rèn)被定義為Variant類型〔變體型〕如:DimX‘變量X的類型是Variant通常把變量名分為兩局部:前綴+描述性字符‘英語(yǔ)單詞首字母大寫其余小寫;前綴通常使用三個(gè)小寫字母來(lái)表示例如:要聲明一個(gè)String類型的變量用于保存姓名,聲明一Single類型的變量用于保存單價(jià),聲明語(yǔ)句如下:DimstrNameAsstringDimsngUnitPriceAsSingle2.1.3.變量的作用域例2-1-21、變量在程序中的位置不同,變量的作用域就不同。2、局部變量:有窗體變量、模塊變量、過(guò)程變量、類變量及語(yǔ)句變量。
3、全局變量及其作用域Public聲明的變量可以被工程中的任一窗體、任一模塊中的任一過(guò)程程序使用。
表2-2常用的變量名前綴數(shù)據(jù)類型前綴數(shù)據(jù)類型前綴BytebytDatedtmIntegerintBooleanblnLonglngVariantvarSinglesngCurrencycurDoubledblObjeactobjStringstr表2-3變量后后綴及其表示類型后綴表示類型%Integer&Long!Single#Double$String除了使用Dim語(yǔ)句聲明一個(gè)變量外,VB還允許使用變量后綴來(lái)表示一局部變量或數(shù)據(jù)的局部類型。如:ProductName$表示一個(gè)String類型的局部變量,ProductID&表示一個(gè)Long類型的局部變量。2.1.4變量名沖突程序可以在不同地方聲明變量,上面已經(jīng)講過(guò)。
2.1.5變量的賦值聲明完變量后,就可以給變量賦值。
2.1.6變量的精度每個(gè)變量都有其類型,每種類型都有其自身的存儲(chǔ)定義(在后面會(huì)講到),因而每個(gè)變量都有其范圍。
2.2常量〔1〕系統(tǒng)內(nèi)在常量這種常量是系統(tǒng)提供的自身?yè)碛械某A?。例如,?-3所示是VB中的表示顏色的常量,可在代碼中的任何地方代替實(shí)際值。表2-4 系統(tǒng)常量中的顏色值常量值描述VbBlack0x0黑色VbRed0xFF紅色VbGreen0xFF00綠色VbYellow0xFFFF黃色VbBlue0xFF0000藍(lán)色VbMagenta0xFF00FF紫紅色VbCyan0xFFFF00青色VbWhite0xFFFFFF白色〔2〕符號(hào)常量(自定義常量)在程序設(shè)計(jì)中使用Const聲明的常量。在聲明一個(gè)常量后就可以用常量名來(lái)引用其代表的常量,常量的定義語(yǔ)法如下:[Public|Private]Const變量名[As數(shù)據(jù)類型]=表達(dá)式例2-2-1計(jì)算球體積注意以下幾點(diǎn):①用Const聲明的常量在程序運(yùn)行的過(guò)程中是不能被重新賦值的。②在常量聲明的同時(shí)賦值。③可以為聲明的常量指定類型,如ConstconValAsCurrency=3.78,缺省時(shí)為所賦值的類型。④用常量為常量初始化時(shí),注意循環(huán)引用易出錯(cuò)。表2-5 VB的標(biāo)準(zhǔn)數(shù)據(jù)類型數(shù)據(jù)類型類型名稱類型聲明字符字節(jié)有效值字節(jié)型Byte
10~255布爾型Boolean
2True或False整型Integer%2–32768~32767長(zhǎng)整型Long&4–2147483648~21474836472.3VB的標(biāo)準(zhǔn)數(shù)據(jù)類型單精度型Single!4負(fù)數(shù):–3.402823E38~–1.40298E–45正數(shù):1.401298E–45~3.402823E38雙精度型Double#8負(fù)數(shù):–1.79769313486232E308~–4.94065645841247E–324正數(shù):4.94065645841247E–324~1.79769313486232E308貨幣型Currency@8–922337203685477.5808~
922337203685477.5807日期型Date
8January1100~December319999對(duì)象型Object
4任何對(duì)象的引用變長(zhǎng)字符串型String$字符串長(zhǎng)度,1字節(jié)/字符
定長(zhǎng)字符串型String*Num$Num
可變類型Variant
不定
注意:1、在上述數(shù)據(jù)類型中,當(dāng)需要表達(dá)String類型的數(shù)據(jù)時(shí),要使用雙引號(hào)將具體內(nèi)容括住。如:“Apple”,”計(jì)算機(jī)“。2、當(dāng)需要表達(dá)Date類型的數(shù)據(jù)時(shí),需要用#號(hào)將具體內(nèi)容括住。如2005年5月16日,那么表達(dá)為:#2005-5-16#例2-3-1以print語(yǔ)句為例printa與print“a”的不同2.3.2數(shù)值數(shù)據(jù)類型數(shù)值數(shù)據(jù)類型有整型、長(zhǎng)整型、單精度型、雙精度型及貨幣型。
2.3.2.1整型整型以Integer表示,變量存儲(chǔ)為16位(2個(gè)字節(jié)),數(shù)值范圍為–32768~32767之間,當(dāng)給Integer類型的變量賦值時(shí),如果值大于32767或小于–32768便會(huì)溢出,因此當(dāng)某個(gè)整數(shù)的值超出Integer的范圍時(shí),必須用Long類型。2.3.2.2長(zhǎng)整型Long(長(zhǎng)整型)變量存儲(chǔ)為32位(4個(gè)字節(jié)),1個(gè)符號(hào)位,31個(gè)數(shù)據(jù)位。
返回目錄2.3.2.3單精度型單精度型也稱為Single數(shù)據(jù)類型。Single(單精度浮點(diǎn)型)變量存儲(chǔ)為IEEE32位(4個(gè)字節(jié))浮點(diǎn)數(shù)值形式,一個(gè)符號(hào)位,8個(gè)指數(shù)位,23個(gè)數(shù)據(jù)位。2.3.2.4雙精度型雙精度型也稱Double數(shù)據(jù)類型。
2.3.2.5貨幣型貨幣型也稱currency數(shù)據(jù)類型Currency變量存儲(chǔ)為64位(8個(gè)字節(jié))整型數(shù)值形式,然后除以10000給出一個(gè)定點(diǎn)數(shù),其小數(shù)點(diǎn)左邊有15位數(shù)字,右邊有4位數(shù)字。
2.3.3字符串字符串是保持字符信息的根本數(shù)據(jù)類型。字符串變量可以包含大約65535字節(jié)(64KB),可以為定長(zhǎng),也可以為變長(zhǎng),每個(gè)字節(jié)包含一個(gè)字符。2.3.3.1可變長(zhǎng)字符串大多數(shù)字符串變量是可變長(zhǎng)字符串類型,存儲(chǔ)在其中的字符串長(zhǎng)度可以為0~65535個(gè)字符之間。可變長(zhǎng)字符串變量一次只能存儲(chǔ)一個(gè)字符串,但其長(zhǎng)度可以隨程序運(yùn)行而改變。2.3.3.2定長(zhǎng)字符串定長(zhǎng)字符串類型的變量,可以定義從0~32767個(gè)字符的固定長(zhǎng)度。程序可以改變定長(zhǎng)字符串變量的內(nèi)容,但是不能改變其長(zhǎng)度。返回目錄2.3.3.3使用字符串應(yīng)注意的問題〔1〕0結(jié)束字符串有些WindowsAPI接口函數(shù)是用C++編寫的,字符串最后一個(gè)字符是CHR(0),因而要將WindowsAPI函數(shù)轉(zhuǎn)換到VB中來(lái),必須經(jīng)過(guò)包裝轉(zhuǎn)換?!?〕字符串中的大小區(qū)別VB對(duì)其語(yǔ)法的大小寫沒有區(qū)別,但在字符串中,VB對(duì)大小寫有區(qū)別,如果想無(wú)視字符串大小的區(qū)別,可以加上Optioncomparetext語(yǔ)句。〔3〕字符串函數(shù)2.3.4Variant數(shù)據(jù)類型Variant數(shù)據(jù)類型是沒被顯式聲明(用如Dim、Private、Public或Static等語(yǔ)句)為其他類型變量的數(shù)據(jù)類型,Variant數(shù)據(jù)類型沒有類型聲明字符。Variant是一種特殊的數(shù)據(jù)類型,除了定長(zhǎng)String數(shù)據(jù)及用戶定義類型外,可以包含任何種類的數(shù)據(jù)。
返回目錄2.3.5Date數(shù)據(jù)類型Date變量存儲(chǔ)為IEEE64位(8個(gè)字節(jié))浮點(diǎn)數(shù)值形式,其表示的日期范圍為100年1月1日~9999年12月31日,時(shí)間范圍為0∶00∶00~23∶59∶59。
返回目錄2.3.6Decimal數(shù)據(jù)類型Decimal變量存儲(chǔ)為96位(12個(gè)字節(jié))無(wú)符號(hào)的整型形式,值為除以一個(gè)10的冪數(shù)所得結(jié)果。Decimal數(shù)據(jù)類型只能在Variant中使用,也就是說(shuō),不能聲明變量為Decimal類型。
返回目錄2.3.7數(shù)據(jù)類型轉(zhuǎn)換一些編程語(yǔ)言對(duì)不同類型數(shù)據(jù)的處理比較嚴(yán)格。將不同類型的值賦給了變量,可能會(huì)產(chǎn)生邏輯錯(cuò)誤。返回目錄表2-4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)函數(shù)轉(zhuǎn)換后的類型
函數(shù)轉(zhuǎn)換后的類型CboolBoolean
CSngSingleCbyteByte
CStrStringCcurCurrency
CvarVariantCdateDate
CVErrErrorCDblDouble
Hex十六進(jìn)制數(shù)Chr返回字符碼對(duì)應(yīng)的字符
Oct八進(jìn)制數(shù)CintInteger
Str將字符串以數(shù)字返回CLngLong
Val返回字符串內(nèi)的數(shù)字2.3.8數(shù)組數(shù)組是有序數(shù)據(jù)的集合。數(shù)組中的元素屬于同一數(shù)據(jù)類型。數(shù)組的下標(biāo)是有界的,分為下界和上界。數(shù)組可以用Dim、Private、Public或Static來(lái)聲明,它們的語(yǔ)法格式相同。下面只講用Dim聲明數(shù)組。返回目錄2.3.8.1固定大小數(shù)組固定大小數(shù)組是指數(shù)組元素的個(gè)數(shù)是固定不變的。根據(jù)固定大小數(shù)組的維數(shù),可以將它分為一維數(shù)組和多維數(shù)組。1.一維數(shù)組2.多維數(shù)組Dim數(shù)組名([下標(biāo)邊界列表])[As數(shù)據(jù)類型]下標(biāo)邊界的定義形式:[下標(biāo)下界]To[下標(biāo)上界]下標(biāo)邊界列表指用逗號(hào)分開的數(shù)組各維的下標(biāo)邊界,即[下標(biāo)下界]To[下標(biāo)上界],[下標(biāo)下界]To[下標(biāo)上界],……,[下標(biāo)下界]To[下標(biāo)上界](第一維)(第二維)(第n維)2.3.8.2動(dòng)態(tài)數(shù)組如果把數(shù)組的大小定義到足夠大來(lái)滿足任意的實(shí)際應(yīng)用需要,這種方法效率很低且浪費(fèi)內(nèi)存空間。在聲明數(shù)組時(shí),假設(shè)不給出維數(shù)列表,那么是將數(shù)組聲明為動(dòng)態(tài)數(shù)組。例如: DimMyArry()AsInteger2.?dāng)?shù)組的高級(jí)功能數(shù)組常用來(lái)存儲(chǔ)成組的變量,但在別的一些方面數(shù)組也是很有用的。〔1〕數(shù)組賦值給維數(shù)或數(shù)據(jù)類型不同的數(shù)組賦值,成功或失敗取決于以下幾個(gè)因素:①賦值符左邊的數(shù)組類型(固定數(shù)組或動(dòng)態(tài)數(shù)組)是否與右邊匹配。②賦值符左邊數(shù)組的維數(shù)是否和賦值符右邊數(shù)組的維數(shù)匹配。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電網(wǎng)工程設(shè)備材料信息參考價(jià)(2024年第四季度)
- 高級(jí)餐飲食品安全管理員技能鑒定理論考試題庫(kù)500題(含答案)
- 2025年河南農(nóng)業(yè)職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年池州職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年江蘇農(nóng)牧科技職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 《醫(yī)療機(jī)構(gòu)管理培訓(xùn)》課件
- 2025民用航空運(yùn)輸行業(yè)未來(lái)發(fā)展與市場(chǎng)展望
- 10kV配電站房工程設(shè)計(jì)與施工流程優(yōu)化
- 壓路機(jī)租賃合同
- 場(chǎng)地租賃經(jīng)營(yíng)合同
- 2025江蘇連云港市贛榆城市建設(shè)發(fā)展集團(tuán)限公司招聘工作人員15人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 江蘇省揚(yáng)州市蔣王小學(xué)2023~2024年五年級(jí)上學(xué)期英語(yǔ)期末試卷(含答案無(wú)聽力原文無(wú)音頻)
- 數(shù)學(xué)-湖南省新高考教學(xué)教研聯(lián)盟(長(zhǎng)郡二十校聯(lián)盟)2024-2025學(xué)年2025屆高三上學(xué)期第一次預(yù)熱演練試題和答案
- 決勝中層:中層管理者的九項(xiàng)修煉-記錄
- 鑄石防磨施工工藝
- 臨時(shí)用電安全培訓(xùn)(匯編)
- 玻璃鋼煙囪方案
- 中小學(xué)教師師德師風(fēng)法律法規(guī)培訓(xùn)
- 醫(yī)療器械質(zhì)量管理體系文件模板
- 在馬克思墓前的講話說(shuō)課稿公開課一等獎(jiǎng)市賽課獲獎(jiǎng)?wù)n件
- 送養(yǎng)收養(yǎng)合同協(xié)議書
評(píng)論
0/150
提交評(píng)論