C語言基本型別宣告 初始化 大小及格式說明符總結

2021-07-29 03:15:03 字數 1458 閱讀 5032

型別

宣告及初始化

大小(byte)

格式說明符

char

char a=』2』;

char a=50,b=062,c=0x32;

char a=』\062』,b=』\x32』;

char a=』\n』,b=』\012』,c=』\x0a』;

字面量和常量:4

變數:1

%cshort

(unsigned) short (int) a=50,b=062,c=0x32,d=50u;

2%hd、%hu、%ho、%#ho、%hx、%#hx

int

(unsigned) int a=50,b=062,c=0x32,d=』2』;

4%d、%u、%o、%#o、%x、%#x

long

(unsigned) long a=50,b=062,c=0x32,d=50l;

4%ld、%lu、%lo、%#lo、%lx、%#lx

long long

(unsigned) long long a=50,b=062,c=0x32,d=50ll;

8%lld、%llu、%llo、%#llo、%llx、%#llx

float

float a=0.1,b=.1,c=1.,d=1e2,e=1.0e2,f=1.0f;

4%f、%e、%a

double

double a=0.1,b=.1,c=1.,d=1e2,e=1.0e2;

8%f、%e、%a

long double

long double a=0.1,b=.1,c=1.,d=1e2,e=1.0e2;

8%lf、%le、%la

注意:0.格式說明符中是o(大寫為o)不是零,是l(大寫為l)不是1。

1.大小為標準的32位機器中的情況,不同機器的int和long大小可能會有差異。

2.還有一些新增的型別如_bool、_complex、_imaginary此次並未列出。

3.儘管同一種型別可以有這麼多種表示方式,但請盡量選擇表達最清楚的方式。

4.無符號型別盡量少用,因為c蛋疼的隱式型別轉換會讓你大吃一斤(比如:if(50u>-50))!!!

5.注意每種型別的取值範圍(溢位問題)及表示精度(什麼很大的數和很小的數相運算就是精度這個問題囉),就是根據資料占有的位個數來計算啦,整數要考慮符號位,浮點數要考慮浮點編碼(單精度1,8,23,雙精度1,11,52)。

6.考慮到**移植性的話,會用到inttypes.h和stdint.h的東西(什麼int32_t,long64_t就是這裡邊的東西啦)。

7.不管什麼聯合型別、列舉型別、使用者自定義的結構體型別或是帶了函式(過程)的抽象資料型別,甚至是所謂高階的物件導向的類,都是由這些基礎資料型別(元型別)構建的,所以嘛基礎一定要穩喲!

Go語言 變數的宣告 初始化等

變數基本型別 bool string int,int8,int16,int32,int64 uint,uint8,uint16,uint32,uint64,uintptr byte uint8的別名 rune int32的別名,代表乙個unicode碼 float32 float64 complex...

C 指標宣告 初始化 基本操作和引數傳遞

這一系列文章用於記錄技術小白在學習道路上遇到的那些坑,在剛開始接觸c系列的程式語言的時候,相信很多人都對指標感到頭疼,筆者也一樣,第一次的從入門到放棄就出現在這裡,時隔很久之後,決定好好學習一下,明知山有虎偏向虎山行。type pointervariable type pointervariable...

C 陣列的概念和宣告 初始化

陣列是乙個儲存相同型別元素的固定大小的有順序的集合。陣列是用來儲存資料的集合,通常認為陣列是乙個同一型別變數的集合。陣列也是一種資料型別,陣列是引用型別 1.1陣列的型別 一維陣列 二維陣列 多維陣列 交錯陣列 1.2簡單陣列 1.2.1陣列的宣告 資料型別 陣列名稱 通過陣列的宣告,明確這個陣列中...