




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2章變量、常量、
數組與數據類型VB中的數據又以四種形式存儲:變量、常量、數組和記錄,如表2-1所示。每一種都適合于不同的特定任務。名字能夠存儲的數據變量常量數組記錄一個可以改變的單值一個固定的單值多個同一數據類型的值多個不同數據類型的數據值表2-1 數據存儲形式2.1.1變量
在程序運行期間,有一些數據是要經常變化的,為了方便起見,就用變量來表示這些數據,變量具有變量名和數據類型,為了使用變量,最好事先聲明這個變量,所謂的聲明變量就是定義變量名和變量類型。在定義變量時應該注意以下幾點:1、變量名必須以字母開頭。2、變量名中不能包含句號、空格、!、#、$、@、%、&、+、-等特殊字符。3、變量名長度不得超過255個字符。4、變量名在同一個有效范圍內必須是唯一的,不能重名,聲明變量要使用Dim語句。聲明變量格式:Dim/static變量名[As數據類型]如:DimXAsInteger‘聲明X為整形變量‘staticSumAsLong‘聲明“Sum”為一靜態變量,類型為長整形。(靜態變量在過程結束后保存變量的值,下次使用時值不會喪失。)DimNameAsString‘聲明Name為字符串變量‘注:聲明一個變量后并不是在程序中的任何位置都可以使用,如果在一個過程的內部聲明變量時,只有過程內部的代碼才能訪問或改變那個變量的值。如果在窗體代碼窗口的通用區域聲明一個變量,那么該變量可以在該窗體的任何事件過程中使用,叫做窗體級變量它只在窗體加載時執行一次。如果在事件過程中聲明,需要在其它位置中也能使用,可以使用Public語句定義。2.1.2聲明變量例2-1-1Public(全局變量聲明)語句其語法格式為:Public變量名As數據類型如果在聲明變量時沒有指定數據類型,那么該變量會默認被定義為Variant類型〔變體型〕如:DimX‘變量X的類型是Variant通常把變量名分為兩局部:前綴+描述性字符‘英語單詞首字母大寫其余小寫;前綴通常使用三個小寫字母來表示例如:要聲明一個String類型的變量用于保存姓名,聲明一Single類型的變量用于保存單價,聲明語句如下:DimstrNameAsstringDimsngUnitPriceAsSingle2.1.3.變量的作用域例2-1-21、變量在程序中的位置不同,變量的作用域就不同。2、局部變量:有窗體變量、模塊變量、過程變量、類變量及語句變量。
3、全局變量及其作用域Public聲明的變量可以被工程中的任一窗體、任一模塊中的任一過程程序使用。
表2-2常用的變量名前綴數據類型前綴數據類型前綴BytebytDatedtmIntegerintBooleanblnLonglngVariantvarSinglesngCurrencycurDoubledblObjeactobjStringstr表2-3變量后后綴及其表示類型后綴表示類型%Integer&Long!Single#Double$String除了使用Dim語句聲明一個變量外,VB還允許使用變量后綴來表示一局部變量或數據的局部類型。如:ProductName$表示一個String類型的局部變量,ProductID&表示一個Long類型的局部變量。2.1.4變量名沖突程序可以在不同地方聲明變量,上面已經講過。
2.1.5變量的賦值聲明完變量后,就可以給變量賦值。
2.1.6變量的精度每個變量都有其類型,每種類型都有其自身的存儲定義(在后面會講到),因而每個變量都有其范圍。
2.2常量〔1〕系統內在常量這種常量是系統提供的自身擁有的常量。例如,表2-3所示是VB中的表示顏色的常量,可在代碼中的任何地方代替實際值。表2-4 系統常量中的顏色值常量值描述VbBlack0x0黑色VbRed0xFF紅色VbGreen0xFF00綠色VbYellow0xFFFF黃色VbBlue0xFF0000藍色VbMagenta0xFF00FF紫紅色VbCyan0xFFFF00青色VbWhite0xFFFFFF白色〔2〕符號常量(自定義常量)在程序設計中使用Const聲明的常量。在聲明一個常量后就可以用常量名來引用其代表的常量,常量的定義語法如下:[Public|Private]Const變量名[As數據類型]=表達式例2-2-1計算球體積注意以下幾點:①用Const聲明的常量在程序運行的過程中是不能被重新賦值的。②在常量聲明的同時賦值。③可以為聲明的常量指定類型,如ConstconValAsCurrency=3.78,缺省時為所賦值的類型。④用常量為常量初始化時,注意循環引用易出錯。表2-5 VB的標準數據類型數據類型類型名稱類型聲明字符字節有效值字節型Byte
10~255布爾型Boolean
2True或False整型Integer%2–32768~32767長整型Long&4–2147483648~21474836472.3VB的標準數據類型單精度型Single!4負數:–3.402823E38~–1.40298E–45正數:1.401298E–45~3.402823E38雙精度型Double#8負數:–1.79769313486232E308~–4.94065645841247E–324正數:4.94065645841247E–324~1.79769313486232E308貨幣型Currency@8–922337203685477.5808~
922337203685477.5807日期型Date
8January1100~December319999對象型Object
4任何對象的引用變長字符串型String$字符串長度,1字節/字符
定長字符串型String*Num$Num
可變類型Variant
不定
注意:1、在上述數據類型中,當需要表達String類型的數據時,要使用雙引號將具體內容括住。如:“Apple”,”計算機“。2、當需要表達Date類型的數據時,需要用#號將具體內容括住。如2005年5月16日,那么表達為:#2005-5-16#例2-3-1以print語句為例printa與print“a”的不同2.3.2數值數據類型數值數據類型有整型、長整型、單精度型、雙精度型及貨幣型。
2.3.2.1整型整型以Integer表示,變量存儲為16位(2個字節),數值范圍為–32768~32767之間,當給Integer類型的變量賦值時,如果值大于32767或小于–32768便會溢出,因此當某個整數的值超出Integer的范圍時,必須用Long類型。2.3.2.2長整型Long(長整型)變量存儲為32位(4個字節),1個符號位,31個數據位。
返回目錄2.3.2.3單精度型單精度型也稱為Single數據類型。Single(單精度浮點型)變量存儲為IEEE32位(4個字節)浮點數值形式,一個符號位,8個指數位,23個數據位。2.3.2.4雙精度型雙精度型也稱Double數據類型。
2.3.2.5貨幣型貨幣型也稱currency數據類型Currency變量存儲為64位(8個字節)整型數值形式,然后除以10000給出一個定點數,其小數點左邊有15位數字,右邊有4位數字。
2.3.3字符串字符串是保持字符信息的根本數據類型。字符串變量可以包含大約65535字節(64KB),可以為定長,也可以為變長,每個字節包含一個字符。2.3.3.1可變長字符串大多數字符串變量是可變長字符串類型,存儲在其中的字符串長度可以為0~65535個字符之間。可變長字符串變量一次只能存儲一個字符串,但其長度可以隨程序運行而改變。2.3.3.2定長字符串定長字符串類型的變量,可以定義從0~32767個字符的固定長度。程序可以改變定長字符串變量的內容,但是不能改變其長度。返回目錄2.3.3.3使用字符串應注意的問題〔1〕0結束字符串有些WindowsAPI接口函數是用C++編寫的,字符串最后一個字符是CHR(0),因而要將WindowsAPI函數轉換到VB中來,必須經過包裝轉換。〔2〕字符串中的大小區別VB對其語法的大小寫沒有區別,但在字符串中,VB對大小寫有區別,如果想無視字符串大小的區別,可以加上Optioncomparetext語句。〔3〕字符串函數2.3.4Variant數據類型Variant數據類型是沒被顯式聲明(用如Dim、Private、Public或Static等語句)為其他類型變量的數據類型,Variant數據類型沒有類型聲明字符。Variant是一種特殊的數據類型,除了定長String數據及用戶定義類型外,可以包含任何種類的數據。
返回目錄2.3.5Date數據類型Date變量存儲為IEEE64位(8個字節)浮點數值形式,其表示的日期范圍為100年1月1日~9999年12月31日,時間范圍為0∶00∶00~23∶59∶59。
返回目錄2.3.6Decimal數據類型Decimal變量存儲為96位(12個字節)無符號的整型形式,值為除以一個10的冪數所得結果。Decimal數據類型只能在Variant中使用,也就是說,不能聲明變量為Decimal類型。
返回目錄2.3.7數據類型轉換一些編程語言對不同類型數據的處理比較嚴格。將不同類型的值賦給了變量,可能會產生邏輯錯誤。返回目錄表2-4 數據類型轉換函數函數轉換后的類型
函數轉換后的類型CboolBoolean
CSngSingleCbyteByte
CStrStringCcurCurrency
CvarVariantCdateDate
CVErrErrorCDblDouble
Hex十六進制數Chr返回字符碼對應的字符
Oct八進制數CintInteger
Str將字符串以數字返回CLngLong
Val返回字符串內的數字2.3.8數組數組是有序數據的集合。數組中的元素屬于同一數據類型。數組的下標是有界的,分為下界和上界。數組可以用Dim、Private、Public或Static來聲明,它們的語法格式相同。下面只講用Dim聲明數組。返回目錄2.3.8.1固定大小數組固定大小數組是指數組元素的個數是固定不變的。根據固定大小數組的維數,可以將它分為一維數組和多維數組。1.一維數組2.多維數組Dim數組名([下標邊界列表])[As數據類型]下標邊界的定義形式:[下標下界]To[下標上界]下標邊界列表指用逗號分開的數組各維的下標邊界,即[下標下界]To[下標上界],[下標下界]To[下標上界],……,[下標下界]To[下標上界](第一維)(第二維)(第n維)2.3.8.2動態數組如果把數組的大小定義到足夠大來滿足任意的實際應用需要,這種方法效率很低且浪費內存空間。在聲明數組時,假設不給出維數列表,那么是將數組聲明為動態數組。例如: DimMyArry()AsInteger2.數組的高級功能數組常用來存儲成組的變量,但在別的一些方面數組也是很有用的。〔1〕數組賦值給維數或數據類型不同的數組賦值,成功或失敗取決于以下幾個因素:①賦值符左邊的數組類型(固定數組或動態數組)是否與右邊匹配。②賦值符左邊數組的維數是否和賦值符右邊數組的維數匹配。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年光伏電站智能化運維培訓與發電量提升策略研究報告
- 2025年有色金屬資源循環利用產業鏈政策環境與法規解讀報告
- 新能源汽車助力2025年城市公交節能減排效果評估報告
- 十大環保產業可持續發展戰略目標規劃報告
- java高級考試試題及答案
- 2025年公交優先戰略視角下城市交通擁堵治理的公共交通與公共交通安全監管
- 2025年冷鏈物流溫控技術與冷鏈物流冷鏈運輸企業冷鏈運輸管理報告
- it面試筆試題目及答案
- id理論考試試題及答案
- hbdi職業性格測試題及答案
- 交通運輸行業反腐心得體會
- 基因突變和基因重組第1課時課件高一下學期生物人教版必修2
- 外墻清洗施工方案
- 中華民族共同體概論知到課后答案智慧樹章節測試答案2025年春麗水學院
- 2024年山東棗莊事業單位招聘筆試真題
- 太陽能路燈采購安裝方案投標文件(技術方案)
- 黑龍江商業職業學院《生活中的科學》2023-2024學年第二學期期末試卷
- 2025年中國校園外賣行業市場深度評估及投資戰略規劃報告
- 電網工程設備材料信息參考價(2024年第四季度)
- 高級餐飲食品安全管理員技能鑒定理論考試題庫500題(含答案)
- 印刷廠售后服務崗位職責
評論
0/150
提交評論