資源描述:
《C語言數(shù)據(jù)類型、運算符與表達式》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第2章數(shù)據(jù)類型、運算符與表達式C語言的數(shù)據(jù)類型數(shù)據(jù)類型分類意義跟存儲空間(占用的存儲空間字節(jié)數(shù)不同,例如char類型占1個字節(jié),int占4個字節(jié))取值范圍(取值類型及取值范圍不同)運算類型(可以進行的運算類型不同,例如%運算符要求操作數(shù)為整型)C語言數(shù)據(jù)類型常量與變量常量:在程序運行過程中值不可改變整形常量,例如1234,58等;實型常量,例如3.14,-2.58等;字符常量,例如'A','5','+'等;宏常量(符號常量),用一個符號名代表一個常量,用define定義例2.1#include#definePRICE30/*此行和上面這
2、行的順序可以交換*/voidmain(){intnum,total;num=10;total=num*PRICE;printf("total=%d",total);}運行結(jié)果為total=300Pressanykeytocontinue在程序編譯之前,會有一個編譯預處理的過程,這時編譯系統(tǒng)會用30來代替PRICE,實質(zhì)是文本替換使用字符常量好處:含義清楚,例如用PI來表示3.14需要修改字符常量值時,只需要修改一處就可以使用字符常量注意問題格式為#define宏名替換文字,編譯預處理會用“替換文字”來代替“宏名”,注意宏名和替換文字的先后順序;“替換
3、名字”可以帶空格,例如#defineHELLOprintf("hello");printf("hello");不作語法檢查,用雙引號括起不進行替換,如printf(“PI”);不進行替換;宏定義不是可執(zhí)行語句,不用分號結(jié)束,如果帶分后,連分號也作為“替換文字”的一部分符號常量常用大寫,以區(qū)別于變量變量:在程序運行過程中值可以改變變量的名字必須符合標識符的命名規(guī)定,C語言有3種類型的標識符關(guān)鍵字:已被固定為特定意義,不可用作標識符,例如int,float,long等系統(tǒng)預定義的標識符:包括系統(tǒng)提供的庫函數(shù)名,例如scanf,printf等,以及編譯預處理命
4、令define等,建議不要用作變量名,否則容易引起混亂;用戶標識符:除此之外的,以字母或者下劃線開頭,以字母、數(shù)字、下劃線構(gòu)成的字符串,可用作變量、函數(shù)、符號常量、數(shù)組、結(jié)構(gòu)體等名字標識符合法的標識符:sum,average,_total,Student_name,_123等不合法的標識符:M.John,$123,#22,1234,a>b等注意:標識符區(qū)分大小寫,例如Sum和sum是兩個不同的標識符,變量一般采用小寫,一般取名要做到“見名知意”,例如sum,average,total等;不同的編譯系統(tǒng)對變量名的長度有不同的規(guī)定;變量必須先定義后使用,例如
5、inta;定義了一個整形的變量,名字為a整形數(shù)據(jù)整型常量的表示形式可用八進制(數(shù)字0開頭),十進制,和十六進制(0x或者0X開頭)表示。如果數(shù)據(jù)范圍在-32768~32767之間,認為是int類型;如果超過此范圍,認為是long類型;長整型后添加l或者L,如1234567L;無符號整形常量后跟u或者U;無符號長整型后加LU,lu,LU,lU之一。整型變量整型變量可以存放整數(shù),有三種類型基本整形,用int定義,例如inta;短整型,用shortint或者short定義;長整型,用longint或long定義整形變量的長度及存儲數(shù)據(jù)的范圍對于turbo系統(tǒng),
6、shor及int類型長度為2字節(jié),范圍為-32768~32767;long類型長度為4字節(jié),范圍為-215~215-1(約±21億)對于VC++6.0系統(tǒng),shor類型長度為2字節(jié),范圍為-32768~32767;int及l(fā)ong類型長度為4字節(jié),范圍為-215~215-1(約±21億)如果在int或者shortint、longint前面加上unsigned修飾符,表示無符號數(shù),表示正數(shù)的范圍擴大一倍(不能存儲負數(shù)),例如unsignedint范圍為0~65535如果在int或者shortint、longint前面加上signed修飾符,表示有符號數(shù),此
7、時signed符號可以省略,也就是signedint與int等價;6種整型變量的定義方法:(方括號表示可以省掉不寫)[signed]int/short[int]/long[int]或者unsignedint/short[int]/long[int]如果不知道具體編譯系統(tǒng)對變量分配多少字節(jié)的存儲空間,可以用sizeof運算符,例如printf("%d",sizeof(int));整型數(shù)據(jù)在內(nèi)存中的存放形式:用補碼形式表示,參看數(shù)字電路相關(guān)章節(jié)整形數(shù)據(jù)的溢出:在編程時注意各種存儲變量存儲數(shù)據(jù)的范圍即可浮點型數(shù)據(jù)浮點型常量的表示形式浮點型常量也就是實型常量
8、,帶有小數(shù)點的常數(shù);3+3-3.33.都是合法實型常量;可以寫成指數(shù)形式,格式為