第3 章 變數、資料型別與常數.ppt

上传人:s****8 文档编号:67145317 上传时间:2022-12-24 格式:PPT 页数:47 大小:313KB
返回 下载 相关 举报
第3 章 變數、資料型別與常數.ppt_第1页
第1页 / 共47页
第3 章 變數、資料型別與常數.ppt_第2页
第2页 / 共47页
点击查看更多>>
资源描述

《第3 章 變數、資料型別與常數.ppt》由会员分享,可在线阅读,更多相关《第3 章 變數、資料型別與常數.ppt(47页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第 3 3 章章 變數、資料型別與常數變數、資料型別與常數什麼是變數!?什麼是變數!?n n變數變數變數變數:程式內,用於儲存可任意:程式內,用於儲存可任意:程式內,用於儲存可任意:程式內,用於儲存可任意變動變動變動變動的的的的資料資料資料資料。n n變數宣告的語法:變數宣告的語法:變數宣告的語法:變數宣告的語法:資料型別資料型別資料型別資料型別 變數名稱變數名稱變數名稱變數名稱;將宣告變數將宣告變數將宣告變數將宣告變數 i i為為為為 intint(整數)型別:整數)型別:整數)型別:整數)型別:intinti;i;一次宣告好幾個資料型別相同的變數:一次宣告好幾個資料型別相同的變數:一次宣

2、告好幾個資料型別相同的變數:一次宣告好幾個資料型別相同的變數:intinti,j,k;i,j,k;在宣告變數時,亦可同時指定它的初值在宣告變數時,亦可同時指定它的初值在宣告變數時,亦可同時指定它的初值在宣告變數時,亦可同時指定它的初值:intinti=10,j=20,k=30;i=10,j=20,k=30;什麼是變數!?什麼是變數!?n n宣告變數,並不限制變數的宣告位置。宣告變數,並不限制變數的宣告位置。宣告變數,並不限制變數的宣告位置。宣告變數,並不限制變數的宣告位置。n n以以以以 coutcout 物件輸出變數:物件輸出變數:物件輸出變數:物件輸出變數:coutcout變數變數變數變數

3、11變數變數變數變數2;2;以下敘述,將分別輸出整數以下敘述,將分別輸出整數以下敘述,將分別輸出整數以下敘述,將分別輸出整數 i i與浮點數與浮點數與浮點數與浮點數 f f的值。的值。的值。的值。intinti=3;i=3;floatf=10.0;floatf=10.0;coutcouti=i,f=i=i,f=ffendlendl執行結果:執行結果:執行結果:執行結果:i=3,f=10.000000i=3,f=10.000000 什麼是變數!?什麼是變數!?n ncoutcoutcoutcout物件定義在物件定義在物件定義在物件定義在iostreamiostreamiostreamiostre

4、am標頭檔內,故使用標頭檔內,故使用標頭檔內,故使用標頭檔內,故使用coutcoutcoutcout物件時,必須用物件時,必須用物件時,必須用物件時,必須用includeincludeincludeinclude敘述載入該標頭檔。敘述載入該標頭檔。敘述載入該標頭檔。敘述載入該標頭檔。如以下所述:如以下所述:如以下所述:如以下所述:#includeinclude/載入標頭檔載入標頭檔載入標頭檔載入標頭檔 資料型別資料型別-C+語言的基本資料型別語言的基本資料型別n nC C+語言的基本資料型別可分為三類:語言的基本資料型別可分為三類:語言的基本資料型別可分為三類:語言的基本資料型別可分為三類:整

5、數整數整數整數(shortshortshortshort、intintintint、longlonglonglong)浮點數浮點數浮點數浮點數(floatfloatfloatfloat、doubledoubledoubledouble、long doublelong doublelong doublelong double)字元字元字元字元(charcharcharchar)。)。)。)。資料型別資料型別-C+語言的基本資料型別語言的基本資料型別n nC+C+語言中,各種基本資料型別的相關資料。語言中,各種基本資料型別的相關資料。語言中,各種基本資料型別的相關資料。語言中,各種基本資料型別的相

6、關資料。儲存整數儲存整數int在在16位元系統下儲存空間、範圍與位元系統下儲存空間、範圍與short相同相同char字元字元字元字元1 bytes-128至至127資料型別資料型別名稱名稱用途用途儲存空間儲存空間儲存值範圍儲存值範圍有效精度位數有效精度位數short短整數短整數儲存較小的整數儲存較小的整數2 bytes-32,768至至32,767在在32位元系統下儲存空間、範圍與位元系統下儲存空間、範圍與long相同相同long長整數長整數儲存較大的整數儲存較大的整數4 bytes-2,147,483,648至至2,147,483,647bool布林值布林值儲存代表真或假的值儲存代表真或假的

7、值1true(真)、真)、false(假)假)float浮點數浮點數較小的實數較小的實數4 bytes3.4E10387double倍精度倍精度浮點數浮點數實數實數8 bytes1.7E1030815long double長倍精度長倍精度浮點數浮點數儲儲存存較較大大的的實實數數在在Visual C+Express中,可儲存的數值型別中,可儲存的數值型別與與double相同相同整數整數資料型別資料型別-整數(整數(short、int、long)n n在在在在C+C+裡,裡,裡,裡,shortshort、intint、longlong均是用於宣告儲存整均是用於宣告儲存整均是用於宣告儲存整均是用於宣

8、告儲存整數資料之變數的型別,其中數資料之變數的型別,其中數資料之變數的型別,其中數資料之變數的型別,其中intint型別最常使用。型別最常使用。型別最常使用。型別最常使用。n nintint型別所佔用的記憶體空間,將隨系統的不同而型別所佔用的記憶體空間,將隨系統的不同而型別所佔用的記憶體空間,將隨系統的不同而型別所佔用的記憶體空間,將隨系統的不同而不同。不同。不同。不同。在在在在1616位元系統下(如:位元系統下(如:位元系統下(如:位元系統下(如:DosDos、Windows3.1Windows3.1),),),),intint的儲的儲的儲的儲存空間與儲存範圍和存空間與儲存範圍和存空間與儲存

9、範圍和存空間與儲存範圍和shortshort型別相同。型別相同。型別相同。型別相同。在在在在UnixUnix、Windows95Windows95、WindowsNTWindowsNT這類這類這類這類3232位元系統位元系統位元系統位元系統的編譯器(如:的編譯器(如:的編譯器(如:的編譯器(如:VisualC+ExpressVisualC+Express與與與與DevC+DevC+),),),),編譯出的程式內,編譯出的程式內,編譯出的程式內,編譯出的程式內,intint型別的儲存空間與範圍將與型別的儲存空間與範圍將與型別的儲存空間與範圍將與型別的儲存空間與範圍將與longlong型別相同。型

10、別相同。型別相同。型別相同。資料型別資料型別-整數(整數(short、int、long)n n以下敘述將示範整數的宣告以下敘述將示範整數的宣告以下敘述將示範整數的宣告以下敘述將示範整數的宣告。intinti,i2=30;/i,i2=30;/宣告整數變數宣告整數變數宣告整數變數宣告整數變數i,i2i,i2,並同時指定並同時指定並同時指定並同時指定i2i2的的的的初值為初值為初值為初值為3030 /宣告短整數變數宣告短整數變數宣告短整數變數宣告短整數變數shi,shi2shi,shi2,並同時指定並同時指定並同時指定並同時指定shi2shi2的初值為的初值為的初值為的初值為5 5 shortshi

11、,shi2=5;shortshi,shi2=5;shortshortintintshi3;/shi3;/宣告宣告宣告宣告shortshortintint的意思相當於宣告的意思相當於宣告的意思相當於宣告的意思相當於宣告為為為為shortshort/宣告長整數變數宣告長整數變數宣告長整數變數宣告長整數變數li,li2li,li2,並同時指定並同時指定並同時指定並同時指定li2li2的初值為的初值為的初值為的初值為20000000002000000000L Llongli,li2=2000000000L;longli,li2=2000000000L;longlongintintli3;/li3;/宣

12、告宣告宣告宣告longlongintint的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為longlong資料型別資料型別-整數(整數(short、int、long)n n以下分別以以下分別以以下分別以以下分別以1010進制、進制、進制、進制、8 8進制與進制與進制與進制與1616進制,指定進制,指定進制,指定進制,指定1010進進進進制數字制數字制數字制數字67326732。intinti10=6732;/i10=6732;/宣告整數變數宣告整數變數宣告整數變數宣告整數變數i10i10,並指定初值並指定初值並指定初值並指定初值為為為為67326732intinti8=

13、015114;/i8=015114;/宣告整數變數宣告整數變數宣告整數變數宣告整數變數i8i8,並指定初值並指定初值並指定初值並指定初值為為為為8 8進制的進制的進制的進制的1511415114intinti16=0 x1a4c;i16=0 x1a4c;/宣告整數變數宣告整數變數宣告整數變數宣告整數變數i16i16,並指定初值為並指定初值為並指定初值為並指定初值為1616進制的進制的進制的進制的1 1a4ca4c資料型別資料型別-整數(整數(short、int、long)n nunsignedunsigned修飾詞修飾詞修飾詞修飾詞 在整數型別之變數的宣告前加上在整數型別之變數的宣告前加上在整

14、數型別之變數的宣告前加上在整數型別之變數的宣告前加上unsignedunsigned修飾詞,修飾詞,修飾詞,修飾詞,可以修改該型別為可以修改該型別為可以修改該型別為可以修改該型別為只可儲存正整數只可儲存正整數只可儲存正整數只可儲存正整數,並增加可儲存,並增加可儲存,並增加可儲存,並增加可儲存的正整數數值之範圍。的正整數數值之範圍。的正整數數值之範圍。的正整數數值之範圍。資料型別資料型別-整數(整數(short、int、long)n n下表為各種整數型別在使用下表為各種整數型別在使用下表為各種整數型別在使用下表為各種整數型別在使用unsignedunsigned修飾詞後的修飾詞後的修飾詞後的修飾

15、詞後的儲存值範圍。儲存值範圍。儲存值範圍。儲存值範圍。資料型別資料型別unsignedshort0至65,535unsignedint或或unsigned0至65,5350至4,294,967,29516位元系統32位元系統儲存值範圍儲存值範圍備註備註unsignedlong0至4,294,967,295資料型別資料型別-整數(整數(short、int、long)n n將變數宣告為將變數宣告為將變數宣告為將變數宣告為unsignedunsigned,相當於相當於相當於相當於unsignedunsignedintint。以下為宣告示範:以下為宣告示範:以下為宣告示範:以下為宣告示範:unsign

16、edunsignedintintu_i;/u_i;/宣告正整數變數宣告正整數變數宣告正整數變數宣告正整數變數u_iu_iunsignedu_i2;/unsignedu_i2;/同同同同unsignedunsignedintint宣告正整數變數宣告正整數變數宣告正整數變數宣告正整數變數u_i2u_i2 unsignedshortunsignedshortush_iush_i;/;/宣告正短整數變數宣告正短整數變數宣告正短整數變數宣告正短整數變數ush_iush_iunsignedshortunsignedshortintintush_i2;ush_i2;/宣告宣告宣告宣告unsignedshor

17、tunsignedshortintint的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為unsignedshortunsignedshortunsignedlongunsignedlonglili;/;/宣告正長整數變數宣告正長整數變數宣告正長整數變數宣告正長整數變數ul_iul_iunsignedlongunsignedlongintintul_i2;ul_i2;/宣告宣告宣告宣告unsignedlongunsignedlongintint的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為的意思相當於宣告為unsignedlongunsignedlong資料型別資

18、料型別-浮點數(浮點數(float、double)n n浮點數浮點數浮點數浮點數型別用於宣告儲存資料型別為實數的變數型別用於宣告儲存資料型別為實數的變數型別用於宣告儲存資料型別為實數的變數型別用於宣告儲存資料型別為實數的變數。n n浮點數科學記號表示法浮點數科學記號表示法浮點數科學記號表示法浮點數科學記號表示法任何一個浮點數均可運用以下的科學記號表示法任何一個浮點數均可運用以下的科學記號表示法任何一個浮點數均可運用以下的科學記號表示法任何一個浮點數均可運用以下的科學記號表示法表達。表達。表達。表達。M*10 M*10 M*10 M*10X X X X下表將說明各部分的意義。下表將說明各部分的意

19、義。下表將說明各部分的意義。下表將說明各部分的意義。符號符號說明說明M M 數字的有效數字部份。數字的有效數字部份。X X 數字以數字以1010為基底的指數部份。為基底的指數部份。資料型別資料型別-浮點數(浮點數(float、double)n n數字數字數字數字120120120120可以運用科學記號表示法,表達為以下可以運用科學記號表示法,表達為以下可以運用科學記號表示法,表達為以下可以運用科學記號表示法,表達為以下幾種形式。幾種形式。幾種形式。幾種形式。120=0.12*10120=0.12*10120=0.12*10120=0.12*103 3 3 3=1.2*10=1.2*10=1.2

20、*10=1.2*10-1-1-1-1=120*10=120*10=120*10=120*100 0 0 0=1200000*10=1200000*10=1200000*10=1200000*10-4-4-4-4 n n在程式中,要表達一個浮點數可以利用以下的在程式中,要表達一個浮點數可以利用以下的在程式中,要表達一個浮點數可以利用以下的在程式中,要表達一個浮點數可以利用以下的語法型式:語法型式:語法型式:語法型式:MeXMeXMeXMeX 或或或或 MEXMEXMEXMEX n n以數字以數字以數字以數字120120120120為例,可以在程式中以下列幾種語法為例,可以在程式中以下列幾種語法為

21、例,可以在程式中以下列幾種語法為例,可以在程式中以下列幾種語法表達。表達。表達。表達。120=0.12120=0.12120=0.12120=0.12e3=1.2e-1=120e0=1200000e-4e3=1.2e-1=120e0=1200000e-4e3=1.2e-1=120e0=1200000e-4e3=1.2e-1=120e0=1200000e-4 資料型別資料型別-浮點數(浮點數(float、double)n n在程式中所指定不同型式的浮點數,在儲存時在程式中所指定不同型式的浮點數,在儲存時在程式中所指定不同型式的浮點數,在儲存時在程式中所指定不同型式的浮點數,在儲存時都只會轉換成一

22、種固定的型式,其儲存型式語都只會轉換成一種固定的型式,其儲存型式語都只會轉換成一種固定的型式,其儲存型式語都只會轉換成一種固定的型式,其儲存型式語法如下。法如下。法如下。法如下。MeXMeXMeXMeX其中:其中:其中:其中:符號符號說明說明M M 數字的有效數字部份,但限制必須為擁有小數的個位數數字,數字的有效數字部份,但限制必須為擁有小數的個位數數字,如:如:5.03855.0385或或-3.305-3.305。X X 數字以數字以1010為基底的指數部份,型態為整數型式,例如:為基底的指數部份,型態為整數型式,例如:-5-5、0 0或或3 3。資料型別資料型別-浮點數(浮點數(float

23、、double)n n下表將以一些數值為例,列出浮點數數字表達下表將以一些數值為例,列出浮點數數字表達下表將以一些數值為例,列出浮點數數字表達下表將以一些數值為例,列出浮點數數字表達為科學記號,與在程式內的科學記號表示方式。為科學記號,與在程式內的科學記號表示方式。為科學記號,與在程式內的科學記號表示方式。為科學記號,與在程式內的科學記號表示方式。浮點數數字浮點數數字科學記號表示科學記號表示程式的科學記號表示程式的科學記號表示351035103.51*103.51*103 33.513.51e3e3-510-510-5.1*10-5.1*102 2-5.1-5.1e2e20.00530.005

24、35.3*105.3*10-3-35.35.3e-3e-335033503X1013X10133.503*103.503*1016163.5033.503e16e160.03850.0385X105X1053.85*103.85*103 33.853.85e3e3-0.0008567-0.0008567-8.567*10-8.567*10-4-4-8.567-8.567e-4e-4資料型別資料型別-浮點數(浮點數(float、double)n n浮點數的宣告浮點數的宣告浮點數的宣告浮點數的宣告 floatf;/floatf;/宣告浮點數變數宣告浮點數變數宣告浮點數變數宣告浮點數變數f fflo

25、atf2=50.5e10f;/floatf2=50.5e10f;/宣告浮點數變數宣告浮點數變數宣告浮點數變數宣告浮點數變數f2f2並設定初值為並設定初值為並設定初值為並設定初值為5.055.05e11e11 doubled;/doubled;/宣告倍精度浮點數變數宣告倍精度浮點數變數宣告倍精度浮點數變數宣告倍精度浮點數變數d ddoubled2=0.35e-200;/doubled2=0.35e-200;/宣告倍精度浮點數變數宣告倍精度浮點數變數宣告倍精度浮點數變數宣告倍精度浮點數變數d2d2並並並並設定初值為設定初值為設定初值為設定初值為3.53.5e-201e-201資料型別資料型別-浮點

26、數(浮點數(float、double)n n下表將說明下表將說明下表將說明下表將說明 floatfloat與與與與 doubledouble兩種兩種兩種兩種的差異的差異的差異的差異 浮點數浮點數較小的實數較小的實數4 4 bytesbytes3.4E10387 7資料型態資料型態名稱名稱用途用途儲存空間儲存空間儲存值範圍儲存值範圍有效精度位數有效精度位數floatfloatdoubledouble倍精度倍精度浮點數浮點數實數實數8 8 bytesbytes1.71.7E10E10308308 1515資料型別資料型別-浮點數(浮點數(float、double)n n浮點數的比較浮點數的比較浮點

27、數的比較浮點數的比較 先先先先指指指指定定定定浮浮浮浮點點點點數數數數變變變變數數數數f=1e36f=1e36f=1e36f=1e36,接接接接著著著著,執執執執行行行行if if if if判判判判斷斷斷斷式式式式,當當當當f f f f等於等於等於等於1 1 1 1e36e36e36e36時,則執行時,則執行時,則執行時,則執行f=f+5e35;f=f+5e35;f=f+5e35;f=f+5e35;敘述。敘述。敘述。敘述。f=1e36f=1e36f=1e36f=1e36判斷式不見得成立判斷式不見得成立判斷式不見得成立判斷式不見得成立,正確的方式應該正確的方式應該正確的方式應該正確的方式應該

28、運用以下邏輯。運用以下邏輯。運用以下邏輯。運用以下邏輯。(f-1e36f-1e36)微小數微小數微小數微小數 /當當當當f f等於等於等於等於1 1e36e36時,則將時,則將時,則將時,則將f f加加加加5 5e35e35if(f=1e36)if(f=1e36)/無法正確比對浮點數無法正確比對浮點數無法正確比對浮點數無法正確比對浮點數f=f+5e35;f=f+5e35;coutcoutfloatf=ffloatf=fendlendl;資料型別資料型別-浮點數(浮點數(float、double)n n判斷判斷判斷判斷f f f f的數值是否等於的數值是否等於的數值是否等於的數值是否等於1 1

29、1 1e36e36e36e36時,微小數應取為時,微小數應取為時,微小數應取為時,微小數應取為1 1 1 1e30e30e30e30(floatfloatfloatfloat的最後一位有效數字),以下敘述為的最後一位有效數字),以下敘述為的最後一位有效數字),以下敘述為的最後一位有效數字),以下敘述為正確的做法。正確的做法。正確的做法。正確的做法。/當當當當f f等於等於等於等於1 1e36e36時,則將時,則將時,則將時,則將f f加加加加5 5e35e35if(abs(f-1e36)1e30)if(abs(f-1e36)1e30)/運用微小數運用微小數運用微小數運用微小數觀念比對浮點數觀念

30、比對浮點數觀念比對浮點數觀念比對浮點數f=f+5e35;f=f+5e35;coutcoutfloatf=ffloatf=fendlendl;資料型別資料型別-字元(字元(char)n n以下敘述將示範字元的宣告。以下敘述將示範字元的宣告。以下敘述將示範字元的宣告。以下敘述將示範字元的宣告。charch1;/charch1;/宣告字元變數宣告字元變數宣告字元變數宣告字元變數ch1ch1charch2=A;/charch2=A;/宣告字元變數宣告字元變數宣告字元變數宣告字元變數ch2ch2,並同時指定並同時指定並同時指定並同時指定ch2ch2的初值為字元的初值為字元的初值為字元的初值為字元AA資料

31、型別資料型別-字元(字元(char)n n跳脫字元的應用跳脫字元的應用跳脫字元的應用跳脫字元的應用 下表將列出常用跳脫字元與對應之下表將列出常用跳脫字元與對應之下表將列出常用跳脫字元與對應之下表將列出常用跳脫字元與對應之ASCIIASCII碼。碼。碼。碼。跳脫字元跳脫字元作用作用ASCIIASCII碼碼(10)(8)(16)(10)(8)(16)進制進制ASCIIASCII表示法表示法ASCIIASCII圖示圖示0 0字串結束字元字串結束字元(Null Null Character)Character)0 00 00 0 x00 x00NULNULNULNUL a a警告音警告音(Alert)

32、Alert)7 70070070 0 x07x07BELBELBELBEL b b倒退一格倒退一格(Backspace)Backspace)8 80100100 0 x08x08BSBSBSBS t t水平跳格水平跳格(Horizontal Tab)Horizontal Tab)9 90110110 0 x09x09HTHTHTHT n n換行換行(New Line)New Line)10100120120 0 x0ax0aNL(LF)NL(LF)NL(LF)NL(LF)r r歸位歸位(Carriage Return)Carriage Return)13130150150 0 x0dx0dCR

33、CRCRCR”雙引號雙引號(Double Quote)Double Quote)34340420420 0 x22x22“單引號單引號(Single Quote)Single Quote)39390470470 0 x27x27 反斜線反斜線(Backslash)Backslash)9292013401340 0 x5cx5c oooooo8 8進制值之進制值之ASCIIASCII值值(oooooo為為8 8進制之數字進制之數字)oooooo xhhxhh1616進制之進制之ASCIIASCII值值(hhhh為為1616進制之數字進制之數字)hhhh資料型別資料型別-字串字串n n欲儲存字串的

34、字串變數時,將運用陣列建立可儲欲儲存字串的字串變數時,將運用陣列建立可儲欲儲存字串的字串變數時,將運用陣列建立可儲欲儲存字串的字串變數時,將運用陣列建立可儲存一串字元的存一串字元的存一串字元的存一串字元的字元陣列字元陣列字元陣列字元陣列。n n以字元陣列方式儲存的字串,稱之為以字元陣列方式儲存的字串,稱之為以字元陣列方式儲存的字串,稱之為以字元陣列方式儲存的字串,稱之為C-styleC-style字串字串字串字串,宣告語法如下:,宣告語法如下:,宣告語法如下:,宣告語法如下:charchar字串名稱字串名稱字串名稱字串名稱 字串長度字串長度字串長度字串長度;n n將宣告一個可以存放將宣告一個可

35、以存放將宣告一個可以存放將宣告一個可以存放7 7個字元的字串個字元的字串個字元的字串個字元的字串變數變數變數變數s s:chars7;/chars7;/宣告字串變數宣告字串變數宣告字串變數宣告字串變數s sn n在宣告變數的同時,可同時完成初值的指定,語在宣告變數的同時,可同時完成初值的指定,語在宣告變數的同時,可同時完成初值的指定,語在宣告變數的同時,可同時完成初值的指定,語法如下:法如下:法如下:法如下:chars7=“Hello!”;/chars7=“Hello!”;/宣告字串變數宣告字串變數宣告字串變數宣告字串變數s s並設定初值為並設定初值為並設定初值為並設定初值為Hello!Hel

36、lo!資料型別資料型別-字串字串n n指定過初值後的字串變數指定過初值後的字串變數指定過初值後的字串變數指定過初值後的字串變數s s的內容如下圖所示:的內容如下圖所示:的內容如下圖所示:的內容如下圖所示:n n以一個簡單的例子來說明,分別以單引號與雙引以一個簡單的例子來說明,分別以單引號與雙引以一個簡單的例子來說明,分別以單引號與雙引以一個簡單的例子來說明,分別以單引號與雙引號括注的字元號括注的字元號括注的字元號括注的字元A A,指派做為給字串變數的初值。指派做為給字串變數的初值。指派做為給字串變數的初值。指派做為給字串變數的初值。存放位置存放位置存放位置存放位置存放字元存放字元存放字元存放字

37、元s0s0s0s0s1s1s1s1s2s2s2s2s3s3s3s3s4s4s4s4s5s5s5s5s6s6s6s6H H H H e e e e l l l l l l l l o o o o !0 0 0 0 字元字元字元字元 A A A A A A A A字串字串字串字串”A A A A”A A A A0 0 0 0資料型別資料型別-字串字串n n宣告時,便指定初值的字串變數,宣告時,便指定初值的字串變數,宣告時,便指定初值的字串變數,宣告時,便指定初值的字串變數,內的數內的數內的數內的數字可以不寫,程式會自動計算字串的長度,並指字可以不寫,程式會自動計算字串的長度,並指字可以不寫,程式會

38、自動計算字串的長度,並指字可以不寫,程式會自動計算字串的長度,並指定正確的值。定正確的值。定正確的值。定正確的值。chars=Hello!;/chars=Hello!;/相當於相當於相當於相當於s7s7 資料型別資料型別-字串字串n n程式中,也可以用程式中,也可以用程式中,也可以用程式中,也可以用 索引數字索引數字索引數字索引數字 的方式,取出的方式,取出的方式,取出的方式,取出或指定字串內的字元。或指定字串內的字元。或指定字串內的字元。或指定字串內的字元。chars4;/chars4;/宣告字串變數宣告字串變數宣告字串變數宣告字串變數s s s0=H;/s0=H;/設定字串變數設定字串變數

39、設定字串變數設定字串變數 s=Hi!s=Hi!s1=i;s1=i;s2=!;s2=!;s3=0;/s3=0;/記得要加上字串結尾,也可以寫成記得要加上字串結尾,也可以寫成記得要加上字串結尾,也可以寫成記得要加上字串結尾,也可以寫成s3=NULL;s3=NULL;資料型別資料型別-字串字串n n以下的宣告方式與以上結果相同,只不過將改用以下的宣告方式與以上結果相同,只不過將改用以下的宣告方式與以上結果相同,只不過將改用以下的宣告方式與以上結果相同,只不過將改用字元陣列的方式設定初值。字元陣列的方式設定初值。字元陣列的方式設定初值。字元陣列的方式設定初值。/宣告字串變數宣告字串變數宣告字串變數宣告

40、字串變數ss,並以字元陣列的方式設定初值並以字元陣列的方式設定初值並以字元陣列的方式設定初值並以字元陣列的方式設定初值chars4=H,i,!,0;chars4=H,i,!,0;資料型別資料型別-字串字串n n當你使用超出所宣告的大小時,程式並不會主動當你使用超出所宣告的大小時,程式並不會主動當你使用超出所宣告的大小時,程式並不會主動當你使用超出所宣告的大小時,程式並不會主動告訴你這個錯誤的,以下敘述就有這樣的錯誤。告訴你這個錯誤的,以下敘述就有這樣的錯誤。告訴你這個錯誤的,以下敘述就有這樣的錯誤。告訴你這個錯誤的,以下敘述就有這樣的錯誤。/錯誤的程式錯誤的程式錯誤的程式錯誤的程式1 1cha

41、rs4=Hello;/chars4=Hello;/初值超出範圍初值超出範圍初值超出範圍初值超出範圍/錯誤的程式錯誤的程式錯誤的程式錯誤的程式2 2chars4;chars4;s4=0;/s4=0;/使用字串之字元超出範圍使用字串之字元超出範圍使用字串之字元超出範圍使用字串之字元超出範圍 資料型別資料型別-字串字串n n程式內字串的接續程式內字串的接續程式內字串的接續程式內字串的接續 在在在在VisualC+ExpressVisualC+Express裡規定,字串常數的長度不可裡規定,字串常數的長度不可裡規定,字串常數的長度不可裡規定,字串常數的長度不可超過超過超過超過20482048個字元。個

42、字元。個字元。個字元。n n可運用以下二種方式,在程式裡,克服較長字串的可運用以下二種方式,在程式裡,克服較長字串的可運用以下二種方式,在程式裡,克服較長字串的可運用以下二種方式,在程式裡,克服較長字串的問題問題問題問題:將字串拆成兩個部分,兩個字串都各自用雙引號形將字串拆成兩個部分,兩個字串都各自用雙引號形將字串拆成兩個部分,兩個字串都各自用雙引號形將字串拆成兩個部分,兩個字串都各自用雙引號形成獨立字串,在各部分字串間的空白與換行將不造成獨立字串,在各部分字串間的空白與換行將不造成獨立字串,在各部分字串間的空白與換行將不造成獨立字串,在各部分字串間的空白與換行將不造成影響,如下所示:成影響,

43、如下所示:成影響,如下所示:成影響,如下所示:chars130=HelloEveryone.chars130=HelloEveryone.“Todayisagoodday”;/“Todayisagoodday”;/第一種方式,以雙引號各自獨立第一種方式,以雙引號各自獨立第一種方式,以雙引號各自獨立第一種方式,以雙引號各自獨立 資料型別資料型別-字串字串 利用反斜線接續,在中斷點加上反斜線,換行從頭開利用反斜線接續,在中斷點加上反斜線,換行從頭開利用反斜線接續,在中斷點加上反斜線,換行從頭開利用反斜線接續,在中斷點加上反斜線,換行從頭開始接續,如下所示:始接續,如下所示:始接續,如下所示:始接續

44、,如下所示:chars230=HelloEveryone.chars230=HelloEveryone.Todayisagoodday;/Todayisagoodday;/第二種方式,以反斜線換行接續第二種方式,以反斜線換行接續第二種方式,以反斜線換行接續第二種方式,以反斜線換行接續 變數命名的限制變數命名的限制n n在命名變數時,必須在命名變數時,必須在命名變數時,必須在命名變數時,必須遵守以下所列的條件:遵守以下所列的條件:遵守以下所列的條件:遵守以下所列的條件:變數的開頭字元應該為英文字母(大小寫均可)變數的開頭字元應該為英文字母(大小寫均可)變數的開頭字元應該為英文字母(大小寫均可)變

45、數的開頭字元應該為英文字母(大小寫均可)或者是底線字元或者是底線字元或者是底線字元或者是底線字元_ _。變數的其它字元應該為英文字母(大小寫均可)、變數的其它字元應該為英文字母(大小寫均可)、變數的其它字元應該為英文字母(大小寫均可)、變數的其它字元應該為英文字母(大小寫均可)、底線字元底線字元底線字元底線字元_ _或者是數字。或者是數字。或者是數字。或者是數字。不可與關鍵字相同。不可與關鍵字相同。不可與關鍵字相同。不可與關鍵字相同。變數命名時,英文字母的大寫與小寫將視為不同。變數命名時,英文字母的大寫與小寫將視為不同。變數命名時,英文字母的大寫與小寫將視為不同。變數命名時,英文字母的大寫與小

46、寫將視為不同。變數命名的限制變數命名的限制n n以下為一些合法命名的變數名稱:以下為一些合法命名的變數名稱:以下為一些合法命名的變數名稱:以下為一些合法命名的變數名稱:i i_best_bestHello_Every_OneHello_Every_OneGoodMorningGoodMorningn n以下為一些不合法命名的變數名稱:以下為一些不合法命名的變數名稱:以下為一些不合法命名的變數名稱:以下為一些不合法命名的變數名稱:7_11/7_11/不能以數字開頭不能以數字開頭不能以數字開頭不能以數字開頭U-Boat/U-Boat/不能有不能有不能有不能有-AreUHungry/AreUHung

47、ry/不能有空白不能有空白不能有空白不能有空白Good?/Good?/不能有問號不能有問號不能有問號不能有問號 變數命名的限制變數命名的限制n n下表為下表為下表為下表為C+C+語言的關鍵字語言的關鍵字語言的關鍵字語言的關鍵字:asmasmautoautoboolboolbreakbreakcasecasecatchcatchcharcharclassclassconstconstconst_castconst_castcontinuecontinuedefaultdefaultdeletedeletedododoubledoubledynamic_castdynamic_castelseel

48、seenumenumexplicitexplicitexportexportexternexternfalsefalsefloatfloatforforfriendfriendgotogotoif ifinlineinlineintintlonglongmutablemutablenamespacenamespacenewnewoperatoroperatorprivateprivateprotectedprotectedpublicpublicregisterregisterreinterpret_castreinterpret_castreturnreturnshortshortsigne

49、dsignedsizeofsizeofstaticstaticstatic_caststatic_caststructstructswitchswitchtemplatetemplatethisthisthrowthrowtruetruetrytrytypedeftypedeftypeidtypeidtypenametypenameunionunionunsignedunsignedusingusingvirtualvirtualvoidvoidvolatilevolatilewchar_twchar_twhilewhile 給變數一個好名字給變數一個好名字-匈牙利命名法匈牙利命名法n n匈牙

50、利命名法:匈牙利命名法:匈牙利命名法:匈牙利命名法:不僅讓變數名稱易於瞭解,變數不僅讓變數名稱易於瞭解,變數不僅讓變數名稱易於瞭解,變數不僅讓變數名稱易於瞭解,變數的資料型別也可以一眼看出的變數命名觀念。的資料型別也可以一眼看出的變數命名觀念。的資料型別也可以一眼看出的變數命名觀念。的資料型別也可以一眼看出的變數命名觀念。n n下表將整理加在變數名稱前,用於代表各資料型下表將整理加在變數名稱前,用於代表各資料型下表將整理加在變數名稱前,用於代表各資料型下表將整理加在變數名稱前,用於代表各資料型別的別的別的別的字首字首字首字首:short短整數短整數shint整數整數nlong長整數長整數lfl

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com