第2章 數(shù)據(jù)類型、運算符與表達式_第1頁
第2章 數(shù)據(jù)類型、運算符與表達式_第2頁
第2章 數(shù)據(jù)類型、運算符與表達式_第3頁
第2章 數(shù)據(jù)類型、運算符與表達式_第4頁
第2章 數(shù)據(jù)類型、運算符與表達式_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第二章第二章 數(shù)據(jù)類型、運算符與表達式數(shù)據(jù)類型、運算符與表達式2000H2001H2002H2003H2004H33+5=?5運算器運算器(2000H)+(2002H)用一個字節(jié)表示整數(shù),范圍為用一個字節(jié)表示整數(shù),范圍為-128127;用兩個字節(jié)表;用兩個字節(jié)表示整數(shù),范圍為示整數(shù),范圍為-32768 32767。一般用四個字節(jié)表示整。一般用四個字節(jié)表示整數(shù)。數(shù)。(舉例舉例)內(nèi)存內(nèi)存CPU內(nèi)存內(nèi)存data外存外存Program8硬盤硬盤 軟盤軟盤15 14 13 12 11 109876543210有符號數(shù)有符號數(shù)無符號數(shù)無符號數(shù)0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 13

2、2767327670 1 1 1 1 1 1 1 1 1 1 1 1 1 1 032766327660 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1-1(補碼補碼)655351 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0-2655341 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1-32767327691 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-3276832768常量與變量常量與變量常量:在程序運行

3、過程中,其值一直保持不變的常量:在程序運行過程中,其值一直保持不變的量為常量。量為常量。常量也區(qū)分不同的類型:常量也區(qū)分不同的類型:30,40 為整型,為整型,30.0,40.0為實型,為實型,編輯器只是根據(jù)其表面形式來判斷其編輯器只是根據(jù)其表面形式來判斷其類型。類型。變量:在程序運行過程中,其值可以改變的量為變量:在程序運行過程中,其值可以改變的量為變量。變量。變量在程序的執(zhí)行中能夠賦值,發(fā)生變化變量在程序的執(zhí)行中能夠賦值,發(fā)生變化。變量。變量有一個名字,有一個名字,并在使用之前要說明其類型并在使用之前要說明其類型,一經(jīng),一經(jīng)說明,說明,就在內(nèi)存中占據(jù)與其類型相應(yīng)的存儲單元。就在內(nèi)存中占據(jù)與

4、其類型相應(yīng)的存儲單元。#include#define PRICE 30 /常量,在程序中保持不變常量,在程序中保持不變void main(void) int num, total; /定義變量定義變量,在內(nèi)存中開辟區(qū)間在內(nèi)存中開辟區(qū)間 num=10; /變量賦值變量賦值,10為常量為常量 total=num*PRICE; cout“total=“total; /輸出結(jié)果輸出結(jié)果其中:其中:num=10 total=num*PRICE 是賦值號,不同于數(shù)學(xué)意義上的等號。是賦值號,不同于數(shù)學(xué)意義上的等號。numtotal10300PRICE30C+中有多種數(shù)據(jù)類型,均有常量與變量之分,各中有多種數(shù)

5、據(jù)類型,均有常量與變量之分,各占不同的內(nèi)存空間,正確定義與使用數(shù)據(jù)是編寫占不同的內(nèi)存空間,正確定義與使用數(shù)據(jù)是編寫程序的基本前提。程序的基本前提。變量名的命名方法:變量名的命名方法:變量名、數(shù)組名、函數(shù)名變量名、數(shù)組名、函數(shù)名稱為稱為標識符標識符。標識符只能由標識符只能由字母、數(shù)字、下劃線字母、數(shù)字、下劃線這三種字符組成,且第這三種字符組成,且第一個字符必須為字母或下劃線,長度不大于一個字符必須為字母或下劃線,長度不大于247個字符,個字符,大小寫不通用大小寫不通用。(關(guān)鍵字不能作為標識符)。(關(guān)鍵字不能作為標識符)。關(guān)鍵字即是關(guān)鍵字即是VC+的語法要求中使用的字的語法要求中使用的字。如如 i

6、nt if while 等。等。 正確的標識符:正確的標識符:INT, sum , de12, SUM等。等。變量必須使變量必須使用前定義,以分配空間。用前定義,以分配空間。舉例說明舉例說明abc English 2xy x-y if Else b(3) def Chine_bb b3y AbsFloat float一般變量都是用匈牙利命名法命名的。一般變量都是用匈牙利命名法命名的。int nCount; char chChoice;整型數(shù)據(jù)整型數(shù)據(jù)整型常量:整型常量:常量是根據(jù)其表面形式來判定,整型量即是沒有小數(shù)點的常量是根據(jù)其表面形式來判定,整型量即是沒有小數(shù)點的整數(shù),范圍:整數(shù),范圍:-

7、231(231-1) ,有三種形式,有三種形式:1)十進制(默認方式)十進制(默認方式)43 1345 876542)八進制)八進制 以以0開頭開頭 043, 056, 0113)十六進制)十六進制 以以0 x開頭開頭 0 x12 0 xa3 0 x34 0 xdf(舉例說明)(舉例說明)#includevoid main(void)int int10,int8,int16; /定義定義3個整型變量個整型變量int10=10;/默認為十進制默認為十進制int8=010;/八進制八進制int16=0 x10;/十六進制十六進制coutint10=int10endl;coutint8=int8en

8、dl;coutint16=int16endl;輸出輸出int10=10int8=8int16=16整型變量:整型變量:分為有符號型與無符號型。分為有符號型與無符號型。有符號型:有符號型: short 在內(nèi)存中占兩個字節(jié),范圍為在內(nèi)存中占兩個字節(jié),范圍為-215(215-1) int 在內(nèi)存中占四個字節(jié),范圍為在內(nèi)存中占四個字節(jié),范圍為-231(231-1)long在內(nèi)存中占四個字節(jié),范圍為在內(nèi)存中占四個字節(jié),范圍為-2-31231-1無符號型:無符號型:最高位不表示符號位最高位不表示符號位unsigned short 在內(nèi)存中占兩個字節(jié),范圍為在內(nèi)存中占兩個字節(jié),范圍為0216-1unsign

9、ed int 在內(nèi)存中占四個字節(jié),范圍為在內(nèi)存中占四個字節(jié),范圍為0232-1unsigned long在內(nèi)存中占四個字節(jié),范圍為在內(nèi)存中占四個字節(jié),范圍為0232-11)整型常量整型常量亦有長短之分,常量中無亦有長短之分,常量中無unsigned型,但一型,但一個非負的整型常量可以賦給個非負的整型常量可以賦給unsigned型的變量。型的變量。 2)若一個常量定義為長整型數(shù),則在其后加)若一個常量定義為長整型數(shù),則在其后加l或或L進行區(qū)進行區(qū)分。分。如:如:32l 32L 564L等,內(nèi)存為其分配四個字節(jié)存儲。等,內(nèi)存為其分配四個字節(jié)存儲。 一個數(shù)在內(nèi)存中為一個數(shù)在內(nèi)存中為1 1 1 1 1

10、 1 1 1 1 1 1 1 1 1 1 1當這個數(shù)為有符號數(shù)時,是當這個數(shù)為有符號數(shù)時,是-1;為無符號數(shù)時,是;為無符號數(shù)時,是232-1內(nèi)存中的數(shù)是以內(nèi)存中的數(shù)是以補碼補碼的形式存放的。(舉例說明)的形式存放的。(舉例說明)1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1#include void main() unsigned short a; short int b= -1; a=b; couta=aendl;結(jié)果:結(jié)果:65535 不同類型的整型數(shù)據(jù)間不同類型的整型數(shù)據(jù)間的賦值歸根到底就是一的賦值歸根到底就是一條:條:按存儲單元中的存按存儲單元中的存儲形式直接傳送。儲

11、形式直接傳送。 a1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1b1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1unsigned short a;實型數(shù)據(jù)實型數(shù)據(jù)實型數(shù)又稱浮點數(shù),有兩種表示方式:實型數(shù)又稱浮點數(shù),有兩種表示方式:1)十進制形式:)十進制形式: 23.0 24.5 3.56789 2) 指數(shù)形式:指數(shù)形式: 23E1 145e-1 356789e1 e前有數(shù)字,后前有數(shù)字,后面必須是整數(shù)。面必須是整數(shù)。實型變量分單精度實型變量分單精度 float 和雙精度和雙精度 double 兩種形式:兩種形式:float:占四個字節(jié),提供占四個字節(jié),提供78

12、位有效數(shù)字。位有效數(shù)字。double: 占八個字節(jié),提供占八個字節(jié),提供1516位有效數(shù)字。位有效數(shù)字。舉例說明舉例說明#includevoid main(void)float a, b;double c, d;a=0.01;b=3.45678e-2;c=3.45678e-2;d=9.7654e-5;couta=atb=bendl;coutc=ctd=dendl;a=0.01 b=0.0345678c=0.0345678 d=9.7654e-005Press any key to continue如果為實數(shù),則用浮點數(shù)的形式在內(nèi)存存儲,表示如下:如果為實數(shù),則用浮點數(shù)的形式在內(nèi)存存儲,表示如下

13、:JtJSfS階符階符階碼階碼數(shù)符數(shù)符尾數(shù)尾數(shù)實數(shù)是既有整數(shù)又有小數(shù)的數(shù)。實數(shù)是既有整數(shù)又有小數(shù)的數(shù)。實數(shù)可以表示成:實數(shù)可以表示成:N=SRJS 稱為尾數(shù),尾數(shù)決定有效數(shù)字,即數(shù)字的精度。稱為尾數(shù),尾數(shù)決定有效數(shù)字,即數(shù)字的精度。J 表示指數(shù)(階碼)。表示指數(shù)(階碼)。R 是基數(shù),可取是基數(shù),可取2,4,8,16等,對具體機器而言,基數(shù)等,對具體機器而言,基數(shù)取好后,就不能再變了。取好后,就不能再變了。數(shù)有正有負數(shù)有正有負, 所以設(shè)置數(shù)符所以設(shè)置數(shù)符; 階碼亦有正負階碼亦有正負, 所以設(shè)置階符所以設(shè)置階符一般用一般用4個字節(jié)表示一個浮點數(shù),也有用個字節(jié)表示一個浮點數(shù),也有用8個字個字節(jié)表示的

14、。節(jié)表示的。字長一定,尾數(shù)越多,精度越高;階碼越多,字長一定,尾數(shù)越多,精度越高;階碼越多,范圍越大。范圍越大。當計算機中出現(xiàn)小于機器所能表示的最小數(shù)當計算機中出現(xiàn)小于機器所能表示的最小數(shù)時,機器只能當零來處理時,機器只能當零來處理,當出現(xiàn)超過機器所能當出現(xiàn)超過機器所能表示的最大數(shù)時,出現(xiàn)溢出現(xiàn)象表示的最大數(shù)時,出現(xiàn)溢出現(xiàn)象,一旦出現(xiàn)溢出,一旦出現(xiàn)溢出,就會停止運算。就會停止運算。定點數(shù),浮點數(shù)均會出現(xiàn)溢出現(xiàn)定點數(shù),浮點數(shù)均會出現(xiàn)溢出現(xiàn)象。象。字符型數(shù)據(jù)(字符型數(shù)據(jù)(char)字符型數(shù)據(jù)實際上是作為字符型數(shù)據(jù)實際上是作為整型數(shù)據(jù)整型數(shù)據(jù)在內(nèi)存中存儲的。在內(nèi)存中存儲的。計算機是以字符編碼的形式處

15、理字符的,因此,我們在計算機內(nèi)部計算機是以字符編碼的形式處理字符的,因此,我們在計算機內(nèi)部是以是以ASCII碼碼的形式表示所有字符的。所以的形式表示所有字符的。所以7位二進制數(shù)即可表示出位二進制數(shù)即可表示出一個字符,一個字符,我們用一個字節(jié)的容量(我們用一個字節(jié)的容量(8位)存儲一個字符。位)存儲一個字符。例如:字符例如:字符A的的ASCII碼為碼為0 x41或或65,在內(nèi)存中表示為:,在內(nèi)存中表示為:01000001在程序中表示為:在程序中表示為:char grade ;/定義一個字符型的變量空間定義一個字符型的變量空間(1個字節(jié)個字節(jié))grade=A; /必須用必須用 表示,否則易與標識符

16、混同表示,否則易與標識符混同 內(nèi)括起來的字符表示該字符的內(nèi)括起來的字符表示該字符的ASCII碼。碼。進一步,由于在內(nèi)存中的形式與整型數(shù)據(jù)相同,所以,進一步,由于在內(nèi)存中的形式與整型數(shù)據(jù)相同,所以,可以直接用可以直接用其整型值給變量賦值。其整型值給變量賦值。char grade;grade=65;以下的賦值形式均是等同的。以下的賦值形式均是等同的。grade=A; grade=65 ; grade=0 x41; grade=0101;#includevoid main(void) char a,b; a=A; /輸入輸入ASCII碼碼 b=65; /輸入十進制數(shù)輸入十進制數(shù) couta=aend

17、l; coutb=bendl;輸出:輸出:a=Ab=A即在內(nèi)存中的表示均是相同的即在內(nèi)存中的表示均是相同的01000001非打印字符非打印字符有些有些ASCII的字符代表某些操作,不能打印出來,的字符代表某些操作,不能打印出來,如回車、退格等,可用兩種方式表示這些字符。如回車、退格等,可用兩種方式表示這些字符。1)用)用ASCII碼的形式碼的形式 char re=13;2)用轉(zhuǎn)義字符)用轉(zhuǎn)義字符 char re=n;(p15)轉(zhuǎn)義字符轉(zhuǎn)義字符含含 義義 ASCII代碼代碼a響鈴響鈴7換行,將當前位置移到下一行開頭換行,將當前位置移到下一行開頭10水平制表(跳到下一個水平制表(跳到下一個tab位

18、置)位置)9退格,將當前位置移到前一列退格,將當前位置移到前一列8回車,將當前位置移到本行開頭回車,將當前位置移到本行開頭13換頁,將當前位置移到下頁開頭換頁,將當前位置移到下頁開頭12 v豎向跳格豎向跳格8 反斜杠字符反斜杠字符“”92單引號(撇號)字符單引號(撇號)字符39雙引號字符雙引號字符340空字符空字符0ddd1到到3位位8進制數(shù)所代表的字符進制數(shù)所代表的字符 xhh1到到2位位16進制數(shù)所代表的字符進制數(shù)所代表的字符 轉(zhuǎn)義字符雖然包含轉(zhuǎn)義字符雖然包含2個或多個字符,但它只代個或多個字符,但它只代表一個字符。表一個字符。編譯系統(tǒng)在見到字符編譯系統(tǒng)在見到字符“”時,時,會接著找它后面

19、的字符,把它處理成一個字會接著找它后面的字符,把它處理成一個字符,在內(nèi)存中只占一個字節(jié)。符,在內(nèi)存中只占一個字節(jié)。 典型轉(zhuǎn)義字符典型轉(zhuǎn)義字符 :n換行換行 b 退格退格 t 下一個輸出下一個輸出區(qū)區(qū)若輸出中包含這些特定格式,則再加一個若輸出中包含這些特定格式,則再加一個輸出輸出 c:tctc 表示為表示為coutc:tctc;可以用轉(zhuǎn)義字符表示任一一個可以用轉(zhuǎn)義字符表示任一一個ASCII字符字符 ddd (八進制)八進制) xhh (十六進制)(十六進制)101 x41 x61 141 #includevoid main(void) char c1,c2,c3,c4; char n1,n2;

20、c1=a;/字符常量字符常量 c2=97;/十進制十進制 c3=x61;/轉(zhuǎn)義字符轉(zhuǎn)義字符 c4=0141;/八進制八進制 coutc1=c1tc2=c2endl; coutc3=c3tc4=c4endl; n1=n; /轉(zhuǎn)義字符:回車轉(zhuǎn)義字符:回車 n2=t; /轉(zhuǎn)義字符:下一個輸出區(qū)轉(zhuǎn)義字符:下一個輸出區(qū)(Tab) cout使用轉(zhuǎn)義字符使用轉(zhuǎn)義字符n; coutc1=c1n2c2=c2n1; coutc3=c3n2c4=c4n1;輸出:輸出:c1=a c2=a c3=a c4=a使用轉(zhuǎn)義字符使用轉(zhuǎn)義字符c1=a c2=a c3=a c4=a字符串常量:字符串常量:用用 表示,表示,在內(nèi)存中

21、順序存放,以在內(nèi)存中順序存放,以0結(jié)束。結(jié)束。如:如:CHINA 0 x430 x480 x490 x550 x410a在內(nèi)存中占一個字節(jié)在內(nèi)存中占一個字節(jié) a占兩個字節(jié)占兩個字節(jié)aa0實際上實際上內(nèi)存是對應(yīng)字符的內(nèi)存是對應(yīng)字符的ASCII碼形式碼形式010000110100100001001001010101010100000100000000CHINA00110000101100001 00000000標識符常量標識符常量在在C+中有二種方法定義中有二種方法定義標識符常量標識符常量,一種是使用編譯預(yù),一種是使用編譯預(yù)處理指令;另一種是使用處理指令;另一種是使用C+的常量說明符的常量說明符c

22、onst。例如:例如: #define PRICE 30 /在程序中凡是出現(xiàn)在程序中凡是出現(xiàn)PRICE均用均用30替代替代 #define PI 3.1415926 #define S “China”const float pi=3.1415926; /將將變量變量pi定義為定義為常量常量(舉例說明)(舉例說明)#include#define PI 3.14156#define S Chinavoid main(void) const float pi=3.14156;/變量作為常量使用變量作為常量使用 coutPI=PIendl; cout10*PI=10*PIendl; coutSendl

23、;/ PI=PI+3;/ pi=pi+4; coutPI=PIendl; coutpi=piendl;輸出:輸出:PI=3.1415610*PI=31.4156ChinaPI=3.14156pi=3.14156下列常量的表示在下列常量的表示在C+C+中是否合法?若不合法,指出原因;中是否合法?若不合法,指出原因;若合法,則指出常量的數(shù)據(jù)類型。若合法,則指出常量的數(shù)據(jù)類型。32767 35u 1.25e3.43L 0.0086e-3287 “Computer System” “a” a 9645-0+0.5-.567變量變量1) 在程序的執(zhí)行過程中,其值可以改變的量在程序的執(zhí)行過程中,其值可以改

24、變的量稱為變量。稱為變量。2) 變量名必須用標識符來標識。變量名必須用標識符來標識。3) 變量根據(jù)其取值的不同值域,分為不同類變量根據(jù)其取值的不同值域,分為不同類型的變量:整型變量、實型變量、字符型變型的變量:整型變量、實型變量、字符型變量、構(gòu)造型變量、指針型變量等等。量、構(gòu)造型變量、指針型變量等等。4) 對于任一變量,對于任一變量,編譯程序要為其分配若干編譯程序要為其分配若干個字節(jié)(連續(xù)的)的內(nèi)存單元,以便保存變個字節(jié)(連續(xù)的)的內(nèi)存單元,以便保存變量的取值量的取值。5) 當要改變一個變量的值時,就是把變量的當要改變一個變量的值時,就是把變量的新的取值存放到為該變量所分配的內(nèi)存單元新的取值存

25、放到為該變量所分配的內(nèi)存單元中;用到一個變量的值時,就是從該內(nèi)存單中;用到一個變量的值時,就是從該內(nèi)存單元中取出數(shù)據(jù)。元中取出數(shù)據(jù)。6) 不管什么類型的變量,通常均是不管什么類型的變量,通常均是變量的說變量的說明在前,使用變量在后。明在前,使用變量在后。int i, j, k;/定義了三個整型變量定義了三個整型變量i,j,kfloat x,y,z;/定義了三個實型變量定義了三個實型變量x,y,zchar c1,c2; /說明了二個字符型變量說明了二個字符型變量c1,c2double dv1;/說明了一個雙精度型變量說明了一個雙精度型變量dv1k四個字節(jié)的四個字節(jié)的連續(xù)空間連續(xù)空間j四個字節(jié)的四

26、個字節(jié)的連續(xù)空間連續(xù)空間i四個字節(jié)的四個字節(jié)的連續(xù)空間連續(xù)空間z四個字節(jié)的四個字節(jié)的連續(xù)空間連續(xù)空間y四個字節(jié)的四個字節(jié)的連續(xù)空間連續(xù)空間x四個字節(jié)的四個字節(jié)的連續(xù)空間連續(xù)空間dv1八個字節(jié)的八個字節(jié)的連續(xù)空間連續(xù)空間c21個字節(jié)的個字節(jié)的空間空間c11個字節(jié)的個字節(jié)的空間空間開辟空間后開辟空間后, 空空間中為隨機值間中為隨機值變量賦初值變量賦初值在定義變量的在定義變量的同時同時給變量賦值,即在內(nèi)存中開辟出一個空給變量賦值,即在內(nèi)存中開辟出一個空間后馬上給此空間賦值。間后馬上給此空間賦值。但這個空間的值并不是固定不變的,但這個空間的值并不是固定不變的,在程序的運行中一樣在程序的運行中一樣可以改

27、變。可以改變。 char a=x64, b=d; int a1=6, a2=98; a=A; b=n; a1=011; a2=121; int a=4; /定義語句,在開辟空間后馬上為空間賦值定義語句,在開辟空間后馬上為空間賦值 a=6; /重新為該空間賦值重新為該空間賦值a4 6算術(shù)運算符和算術(shù)表達式算術(shù)運算符和算術(shù)表達式一、算術(shù)運算符和算術(shù)表達式一、算術(shù)運算符和算術(shù)表達式+ * % 用算術(shù)運算符連接起來的式子是算術(shù)表達式用算術(shù)運算符連接起來的式子是算術(shù)表達式兩個整數(shù)相除結(jié)果為整數(shù)兩個整數(shù)相除結(jié)果為整數(shù) 1/2=0 5/2=2整數(shù)才可求余,余數(shù)的符號與左邊數(shù)的符號相同。整數(shù)才可求余,余數(shù)的符

28、號與左邊數(shù)的符號相同。3%2=1 -3%2=-1 3%-2=1 -3%-2=-1 8%4=0二、優(yōu)先級與結(jié)合性二、優(yōu)先級與結(jié)合性()() * / % + 三、強制轉(zhuǎn)換類型三、強制轉(zhuǎn)換類型(類型名)(表達式)(類型名)(表達式)(double) a (int) (x+y) (int) 6.2%4=2在強制類型運算后原變量不變,但得到一個所需在強制類型運算后原變量不變,但得到一個所需類型的中間變量。類型的中間變量。如:如:int x; float y=5.8; x=(int)y;x=5y=5.8y的值沒有改的值沒有改變,仍是單精變,仍是單精度浮點型度浮點型四、自增、自減運算符四、自增、自減運算符

29、(難點)難點) + i6i37 int i, j; i=3; j = +i;i=4 j=4 +在前在前, 先運算先運算,后賦值后賦值 int i, j; i=3; j = i+;i=4 j=3 +在后在后, 先賦值先賦值,后運算后運算j44i3j34i=6; i+; i=i+1 i=7 +i; i=i+1 i=7 i=6; i; i=i1 i=5 i ; i=i1 i=5i6 71)自增、自減運算符只能用于變量,不可用于常量和表自增、自減運算符只能用于變量,不可用于常量和表達式達式因為表達式在內(nèi)存內(nèi)沒有具體空間,常量所占的空間不能因為表達式在內(nèi)存內(nèi)沒有具體空間,常量所占的空間不能重新賦值重新賦

30、值3+ (x+y)+ (i)+若若i=3, j=2 (i+) +j 等于等于5i=4, j=22)結(jié)合方式自右至左,優(yōu)先級最高,向右取最大)結(jié)合方式自右至左,優(yōu)先級最高,向右取最大i+ (i+) i+j (i+) +j賦值運算符和賦值表達式賦值運算符和賦值表達式bmw=2002=左邊左邊必須是變量名。必須是變量名。若若“ = ” 兩邊變量類型不同,在賦值時要進兩邊變量類型不同,在賦值時要進行行類型轉(zhuǎn)換類型轉(zhuǎn)換。轉(zhuǎn)換原則:根據(jù)左邊變量的類型轉(zhuǎn)換。轉(zhuǎn)換原則:根據(jù)左邊變量的類型轉(zhuǎn)換。少字節(jié)少字節(jié)多字節(jié)多字節(jié)1)若多字節(jié)變量為)若多字節(jié)變量為unsigned ,則轉(zhuǎn)換后多余字節(jié)補則轉(zhuǎn)換后多余字節(jié)補零。

31、零。0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1unsignedshort int a=-1;unsigned long b;b=a;a ab b1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1有符號型,符號擴展有符號型,符號擴展short int a=-1;long b;b=a;2)若多字節(jié)變量為有符號型,則轉(zhuǎn)換后擴展少字)若多字節(jié)變量為有符號型,則轉(zhuǎn)換后擴展少字節(jié)的最高位。節(jié)的最高位。轉(zhuǎn)換后,數(shù)據(jù)的符號不變。轉(zhuǎn)換后,數(shù)據(jù)的符號不變。a ab b多字節(jié)多字節(jié)少字節(jié)少字節(jié)低位照搬低位照搬1 1 1 1

32、1 1 1 1 1 1 1 1 1 1 1 1int a=-1;short int b;b=a;b=-1int a=65535;short int b;b=a;b=-1b ba a1 1 1 1 1 1 1 1賦值表達式賦值表達式a=b=5 ; b=5 a=5=的結(jié)合性為的結(jié)合性為自右至左自右至左復(fù)合的賦值運算符復(fù)合的賦值運算符a+=3 a=a+3 x*=y+3 x=x*(y+3)x/=x-4 x=x/(x-4) x+=y x=x+yi+=j- i=i+(j-)a=12; a+=a-=a*a;12a a=a-(a * a) =12-(12*12)=-132 a=a+(-132)=-132-13

33、2=-264-132-264關(guān)系運算符和關(guān)系表達式關(guān)系運算符和關(guān)系表達式關(guān)系運算符(比較運算)關(guān)系運算符(比較運算) = = = !=1. = = 與與 = a=5; 賦值運算賦值運算 a= =5;判斷是否相等;判斷是否相等2. = 的優(yōu)先級大于的優(yōu)先級大于= = !=3. 算術(shù)運算符的優(yōu)先級大于關(guān)系運算符的優(yōu)先級算術(shù)運算符的優(yōu)先級大于關(guān)系運算符的優(yōu)先級關(guān)系表達式:用關(guān)系運算符將表達式連接起來稱關(guān)系表達式:用關(guān)系運算符將表達式連接起來稱為關(guān)系表達式。其值非真即假。在為關(guān)系表達式。其值非真即假。在C+語言中,用語言中,用非非0代表真,用代表真,用0表示假。表示假。關(guān)系表達式的結(jié)果只有關(guān)系表達式的結(jié)果只有兩個,真為兩個,真為1,假為,假為0。 a=2 b=3 c=4a2 ab+c a= =2 a= =aaa b=a= =2aA b= =a+1c-a= =a001

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論