pascal精要類(lèi)型、變量及常量

ID:30428439

大?。?5.05 KB

頁(yè)數(shù):13頁(yè)

時(shí)間:2018-12-29

pascal精要類(lèi)型、變量及常量_第1頁(yè)
pascal精要類(lèi)型、變量及常量_第2頁(yè)
pascal精要類(lèi)型、變量及常量_第3頁(yè)
pascal精要類(lèi)型、變量及常量_第4頁(yè)
pascal精要類(lèi)型、變量及常量_第5頁(yè)
資源描述:

《pascal精要類(lèi)型、變量及常量》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。

1、PASCAL精要類(lèi)型、變量及常量PASCAL精要--類(lèi)型、變量及常量2010-04-2015:31最初的Pascal語(yǔ)言是以一些簡(jiǎn)單的概念為基礎(chǔ)建立起來(lái)的,這些概念現(xiàn)在普遍出現(xiàn)在編程語(yǔ)言中。最重要的概念當(dāng)屬數(shù)據(jù)類(lèi)型,數(shù)據(jù)類(lèi)型決定了變量可取的值,以及可在這些值上進(jìn)行的操作。Pascal數(shù)據(jù)類(lèi)型的概念強(qiáng)于C語(yǔ)言及早期的BASIC語(yǔ)言,在C語(yǔ)言中算術(shù)數(shù)據(jù)類(lèi)型是可以互換的,而早期的BASIC語(yǔ)言中根本沒(méi)有與數(shù)據(jù)類(lèi)型相似的概念。變量Pascal變量在使用前必須聲明,聲明變量時(shí)必須指定一種數(shù)據(jù)類(lèi)型。下面是變量聲明的例子:varValue:Integ

2、er;IsCorrect:Boolean;A,B:Char;關(guān)鍵字var可以在許多地方使用,例如放在函數(shù)或過(guò)程的開(kāi)始部分,用來(lái)聲明函數(shù)或過(guò)程的局部變量;也可以放在單元中,用于聲明全程變量。var關(guān)鍵字之后是一組變量名列表,每個(gè)變量名后跟一個(gè)冒號(hào)和數(shù)據(jù)類(lèi)型名,一行中可以聲明多個(gè)變量,如上例中最后一句。一旦變量的類(lèi)型被指定,你只能對(duì)變量執(zhí)行該變量類(lèi)型支持的操作。例如,在判斷操作中用布爾值,在數(shù)字表達(dá)式中用整型值,你不能將布爾值和整型值混用(在C語(yǔ)言中可以這樣)。使用簡(jiǎn)單的賦值語(yǔ)句,可寫(xiě)出下面的代碼:Value:=10;IsCorrect:=

3、True;但下面的語(yǔ)句是不正確的,因?yàn)閮蓚€(gè)變量數(shù)據(jù)類(lèi)型不同:Value:=IsCorrect;//error在Delphi中編譯這句代碼,會(huì)出現(xiàn)錯(cuò)誤信息:Incompatibletypes:'Integer'and'Boolean'.(類(lèi)型不兼容:'整型'和'布爾型')。象這樣的錯(cuò)誤通常是編程錯(cuò)誤,因?yàn)榘岩粋€(gè)True或False的值賦給一個(gè)整型變量沒(méi)有什么意義。你不該責(zé)怪Delphi提示這樣的錯(cuò)誤信息,代碼中有不對(duì)的地方Delphi當(dāng)然要提出警告。把變量的值從一種類(lèi)型轉(zhuǎn)換到另一種類(lèi)型往往不難做到,有些情況下類(lèi)型轉(zhuǎn)換會(huì)自動(dòng)實(shí)現(xiàn),不過(guò)一般情

4、況下需要調(diào)用特殊的系統(tǒng)函數(shù),通過(guò)改變數(shù)據(jù)內(nèi)部表示來(lái)實(shí)現(xiàn)類(lèi)型轉(zhuǎn)換。在Delphi中,當(dāng)你聲明全程變量時(shí),你可以賦給它一個(gè)初值。例如,你可以這樣寫(xiě):varValue:Integer=10;Correct:Boolean=True;這種初始化方法只能用于全程變量,不能用于過(guò)程或方法的變量。常量對(duì)于在程序運(yùn)行期間保持不變的值,Pascal允許通過(guò)常量來(lái)聲明。聲明常量不必特定數(shù)據(jù)類(lèi)型,但需要賦一個(gè)初值。編譯器會(huì)根據(jù)所賦初值自動(dòng)選用合適的數(shù)據(jù)類(lèi)型。例如:constThousand=1000;Pi=3.14;AuthorName='MarcoCant

5、ù';Delphi根據(jù)常量的值來(lái)決定它的數(shù)據(jù)類(lèi)型。上例中的Thousand變量,Delphi會(huì)選用SmallInt數(shù)據(jù)類(lèi)型(短整型--能容納Thousand變量的最小整數(shù)類(lèi)型)。如果你想告訴Delphi采用特定的類(lèi)型,你可在聲明中加入類(lèi)型名,方法如下:constThousand:Integer=1000;對(duì)于聲名的常量,編譯器有兩種編譯選擇:第一種為常量分配內(nèi)存,并把常量的值放入內(nèi)存;第二種在常量每次使用時(shí)復(fù)制常量值。第二種方法比較適合簡(jiǎn)單常量。:16位的Delphi允許你在程序運(yùn)行期間改變已定義的常量值,就象一個(gè)變量一樣。32位的De

6、lphi為了向后兼容仍容許這種操作,只要你附加$J編譯指令,或選擇工程選項(xiàng)對(duì)話框中Compiler(編譯器)頁(yè)的Assignabletypedconstants復(fù)選框就行。盡管如此,這里我還是要強(qiáng)烈建議萬(wàn)不得以不要使用上述操作,因?yàn)榘研轮蒂x給常量將使編譯器不能對(duì)常量進(jìn)行優(yōu)化,與其如此不如直接聲明一個(gè)變量。資源串常量當(dāng)定義字符串常量時(shí),你可這樣寫(xiě):constAuthorName='MarcoCantù';從Delphi3開(kāi)始,你可以用另一種方式寫(xiě):resourcestringAuthorName='MarcoCantù';上面兩個(gè)語(yǔ)句都定

7、義了一個(gè)常量,也就是定義了一個(gè)在程序運(yùn)行期間保持不變的值,但兩者的實(shí)現(xiàn)過(guò)程卻不同,用resourcestring指令定義的字符串變量將被保存到程序資源的字符串表中。從例子ResStr你可了解資源串的實(shí)際作用,例子中設(shè)置了一個(gè)按鈕,相應(yīng)代碼如下:resourcestringAuthorName='MarcoCantù';BookName='EssentialPascal';procedureTForm1.Button1Click(Sender:TObject);beginShowMessage(BookName+#13+AuthorNam

8、e);end;以上代碼中的兩個(gè)字符串將分兩行輸出顯示,因?yàn)樽址环中蟹?13隔開(kāi)。有趣的是,當(dāng)你用資源編輯器打開(kāi)執(zhí)行文件時(shí),你會(huì)在程序資源中看到你所定義的字符串。這意味著字符串并沒(méi)有進(jìn)入編譯代碼,而是保存

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。
关闭