資料結構(結構體定義,typedef)

2021-06-21 12:58:18 字數 1834 閱讀 9971

時間2014-03-24 00:22:39 

csdn部落格  原文

看了郝斌老師的資料結構,很有感觸,所以就想寫乙個系列關於資料結構的文章——不論你是出於單純學習資料結構,還是出於為考研資料結構的初試以及複試做準備的目的,我相信你都可以從本系列博文中獲益。 

環境:windows xp(x86),vc++6.0

意圖:要想學好資料結構,那麼結構體、指標、typedef你一定要熟練的使用,所以博主在參考了郝斌老師的資料結構後,對他的練手程式進行了完善,希望能夠在正式開始資料結構的鍊錶學習前,將基礎打好。

# include 

# include

/*簡單說明:模擬當初始陣列滿時可以自增給定長度的int型別的陣列

創作靈感:修改自郝斌老師資料結構,郝斌老師的int陣列不能自增

作 者:leonard

*/typedef struct arr

arr;

void init_arr(arr *arr,int len);

void selfincrese_arr(arr *arr);//當arr所指向的int型別陣列滿是,自增給定的長度

value);//將value直接追加到陣列尾部

bool insert_arr(arr *arr,int pos,int

value);//將value新增到陣列指定pos位置的後面,pos從0開始

bool delete_arr(arr *arr,int pos, int *dvalue);//刪除陣列指定pos位置上的資料,並將這個資料返回

bool isempty(arr *arr);

bool isfull(arr *arr);

void show_arr(arr *arr);//順序列印int型別陣列的所有元素

void inverse_arr(arr *arr);//對指定陣列的所有元素進行頭尾反轉

int main(void)

void init_arr(arr *arr,int len)

else

printf("動態分配記憶體失敗...\n");

}bool isfull(arr *arr)

bool isempty(arr *arr)

void show_arr(arr *arr)

printf("\n");

}//將int型陣列指向的記憶體按照事先的約定擴大

void selfincrese_arr(arr *arr)

arr->pbase = (int *)malloc(sizeof(int)*(arr->length+=arr->increment));

for(int k = 0;klength;k++)

}//在陣列尾部直接插入新元素

value)

else

return

true;

}//在pos位置的後面加入乙個值為value的元素,pos從0開始

bool insert_arr(arr *arr,int pos,int

value)

else

arr->pbase[pos+1] = value;

(arr->cnt)++;

return

true;}}

//刪除pos位置上的那個元素,並將刪除位置上元素的值返回pos從0開始

bool delete_arr(arr *arr,int pos, int *dvalue)

arr->cnt--;

return

true;

}//對指定的int型別陣列進行反轉

void inverse_arr(arr *arr)

}

資料結構結構體定義問題

typedef 用法 解釋typedef unsigned int uint uint等價於unsigned int型別定義 typedef int pointer pointer p宣告等價於int p宣告 在資料結構中,經常用typedef定義結構體 typedef struct treenod...

資料結構常用的結構體定義

一.順序表結構體定義 typedef struct sqlist 二.單鏈表結構體定義 typedef struct lnode lnode 三.雙鏈表結構體定義 typedef struct dlnode dlnode 四.順序棧結構體定義 typedef struct sqstack 五.鏈棧結...

結構體定義 資料結構基礎複習

結構體別名是指標 typedef struct olnode olnode,olink 結構的物件olnode,指向結構的指標 olink,可以這樣寫 struct olnode olnode olnode,olink olnode enq olink enq 這兩個是等價的 如果在結構體定義頭寫s...