3.1 資料型別關鍵字
位:計算機內部資料儲存的最小儲存單位(bit)。
位元組:計算機中資料處理的基本單位(byte)),1b=8bit。
字:計算機進行資料處理時,一次訪問,加工和傳送的資料長度。(word)。
3.1.1 不同資料型別的表示方法
在printf()中顯示
十進位制二進位制
八進位制顯示數字
%d%o
%ox顯示字首
%#o%#x()改成x就顯示x
資料型別
轉換說明
char
%cshort
%hdunsigned short
%huint
%dunsigned int
%ulong
%lunsigned long
%lulong long
%llunsigned long long
%llu
關於printf(),該語句先將輸出傳送到乙個叫緩衝區的中間儲存區域,當儲存區滿,或遇到換行字元或需要輸入時傳送輸出到螢幕(從緩衝區把資料傳送到螢幕或檔案的被稱為重新整理緩衝區)
3.2 char型別
ascll碼
轉義序列
3.3 可移植型別:stdio.h和inttypes.h
例int32_t:表示有符號的整數型別。為精確寬度整數型別示例。
int_least8_t:表示可容納8位有符號整數值的型別中寬度最小的型別的乙個別名。
最小寬度型別:保證所表示的型別一定是至少有指定寬度的最小整數型別。
int_fast8_t:系統中對8位有符號值而言最快的整數型別別名。
最快最小寬度型別:使計算達到最快的型別集合。
intmax_t:最大有符號整數型別。
3.3 浮點數
float:必須至少能表示6位有效數字,且取值範圍至少是10-37~10+37。
double:必須至少能表示10位有效數字,編譯器假定浮點型常量為double。
列印方法:
%f表示列印10進製計數法的folat型別。(一定要用%lf表示double型別)
%e表示列印指數計數法的falat和double
列印long float或long double要用%lf轉換說明。
3.4 複數和虛數型別
虛數是可選型別。複數的實部和虛部都是基於浮點型別來構成。
float _complex
double _complex
long double _complex
float _imaginary
double _imaginary
long double _imaginary
3.5 型別大小
利用sizeof()來查詢各資料型別的大小,一定要避免資料出現上溢和下溢。
c99和c11利用%zd來轉換說明sizeof的返回型別。
不支援c99和c11的可用%u或%lu。
利用float.h標頭檔案
dbl_max double最大值
dbl_min double最小值
flt_max float 最大值
flt_min float 最小值
3.6 程式設計練習
1.整數上溢即由最大值變為最小值,下溢即由最小值變為最大值。
浮點數上溢下溢如下圖。
2.輸入ascll碼對應的數值,列印出對應的字元。
#include #include4.鍵入乙個浮點數,分別以小數點形式,指數形式,p計數法形式顯示。int main(void
)
#include #include5.年齡換算為秒int main(void
)
#include int main(void6.將輸入的夸脫數轉化為相應的水分子數量。)
#include int main(void8.因為以杯作為基準,則會出現整數不夠用的情況。)
第三章 資料和C
platinum.c include int main void 程式執行中無法改變改變的數字或字元稱為常量 如示例中12.121 在程式中隨著賦值,運算等操作而改變量值的稱為變數 如變數 weight value k r 關鍵字 c90標準新增關鍵字 c99標準新增關鍵字 intsigned bo...
《C和指標》第三章 資料
1.c語言中有四種基本資料型別 整形 浮點型 指標和聚合型別 陣列 結構等 2.整型家族包括字元型 至少8位 短整型 至少16位 整型 至少16位 和長整型 至少32位 她們都有有符號和無符號兩種版本。3.列舉型別就是指她的值為符號常量而不是字面值型別,而符號名實際值都是整型值。如果某個符號沒有顯示...
第三章 資料和C(二)
字元char,雖然儲存的是字幕和標點符號,但技術上的實現確是整數型別。有兩種原因 1.計算機內部不可能儲存字母,所有的都是二進位制資料。2.文字檔案結束標誌符eof,經常被定義為整數 1。文字肯定都是字母和標點組成。標準asc 碼範圍從0到127,用8位的整數來表示足夠了,char型別應運而生。後來...