c語言 資料型別, 陣列

2021-09-25 11:28:29 字數 1474 閱讀 6733

1.基礎資料型別

signed 修飾無符號資料, unsigned 修飾有符號資料。

signed int i1 = 1;

unsigned int i2 = -1;

c的基本型別整理:

sizeof(); 獲取物件,或者型別的變數 儲存位元組的大小。

比如:sizeof(i1);

long 和 int  在早期的十六位計算機上面 int 2位元組,long 4位元組,而現在一般32,64下,long和int一樣。

想要8位元組的話就可以是 long long

long long   i3 = 10;     sizeof(i3);

列印的話:

printf("%d\n",i1);     %d的意思就是格式化  int型別的資料

格式化還有:

8進製      %o

16進製制       小寫: %x    大寫:%x

(0x)+16進製制前面     %#x

c99標準以前,c語言裡面是沒有bool,c++裡面才有,

c99標準裡面定義了bool型別,需要引入標頭檔案stdbool.h

bool型別有只有兩個值:true =1 、false=0。

因此實際上bool就是乙個int

所以在c/c++中 if 遵循乙個規則, 非0為true,非空為true;

null 其實也就是被define為了 0

2. 格式化  

需要引入 #include 標頭檔案

printf、sprintf等

sprintf:將格式化的資料寫入第乙個引數

char  str[100];

sprintf(str, "小明今年%d歲了", 10);

printf("%s", str);

輸出如下:

3.陣列與記憶體布局

陣列:int array[6];  必須宣告是確定陣列大小

int array1 =;  或者直接初始化

動態記憶體申請:

malloc   沒有初始化記憶體的內容,一般呼叫函式memset 來初始化這部分的記憶體空間

int *dil = (int*)malloc(1 * 1024 * 1024);   //需要用指標來接收

memset(dil, 10, 1 * 1024 * 1024);     

calloc   申請記憶體並將初始化記憶體資料為null

int *di2 = (int*)calloc(10, 4);

realloc   對malloc申請的記憶體進行大小的調整

char *a = (char*)malloc(10);

realloc(a,20);

這些申請的記憶體 使用完都需要通過  free();   來釋放記憶體

if (dil)

if (di2)

C語言 資料型別

基本型別 整形 int 字元型 char 實型 浮點型 單精度 float 雙精度 double 構造型別 陣列型別,結構型別 struct 聯合型別 uion 列舉型別 enum 指標型別 空型別 無值型別 void。常量 在程式執行過程中,其值不能被改變的量稱為常量。變數 變數代表記憶體中具有特...

c語言資料型別

下面是我關於c語言中各種資料型別長度的總結 參考the c programming language 1.c語言中的整數型別有char,short,int,long等幾種,下面是c語言對每種資料型別長度的規定 a short和long型別的長度不相同 b int型別通常同具體機器的物理字長相同 c ...

C語言 資料型別

整形資料在記憶體中的存放形式 數值是以補碼表示的 1.正數的補碼和原始碼相同,2.負數的補碼 將該數的絕對值的二進位制形式按位取反再加1.例如 求 10 的補碼 10的原始碼 0000 0000 0000 1010 取反 1111 1111 1111 0101 再加1,得 10補碼 1111 111...