今天看了下c和指標的 標準函式庫那一張。複習了以前知道的一些函式。rand(); srand(); time(),等函式。學習到兩個很有用的函式qsort, bsearch函式。這兩個函式中也有函式指標的應用。。對於signal函式,還有一些疑惑.
另外,聯想到之前自己寫的協議棧**中太多佇列了,每乙個佇列都是自己維護。於是寫了乙個自己的迴圈 佇列。檔案如下 my_queue.h: 以後c語言用迴圈佇列直接用這個
#ifndef my_queue_h
#define my_queue_h
typedef int type;
#define queue_size 5
typedef struct
my_queue;//我的迴圈佇列
int in_queue(my_queue *temp,type t);
int out_queue(my_queue *temp,type *t);
int is_empty(my_queue *temp);
int is_full(my_queue *temp);
int in_queue(my_queue *temp,type t)
int out_queue(my_queue *temp,type *t)
int is_empty(my_queue *temp)
int is_full(my_queue *temp)
#endif
另外在main函式中。定義了乙個
my_queue rev_buf;
然後有資料之後,測試了一下qsort()函式
qsort(rev_buf.content,rev_buf.count,sizeof(type),my_compare);
int my_compare(void const *a,void const *b)
佇列 迴圈佇列
迴圈佇列是乙個大小確定的特殊佇列,它的特殊體現在迴圈,之前提到的普通佇列,我們是用鍊錶來實現的,在這裡,由於迴圈佇列是乙個長度確定的佇列,所以我們可以拿順序表來實現。迴圈佇列的操作與普通佇列類似,不過不同的地方在於當rear走到capacity 1並且front在0號元素位置的時候,當此時再有元素入...
佇列 迴圈佇列的實現
為了可以重新利用佇列底層陣列中已刪除元素所佔的空間,消除可能出現的 假滿 現象,將順序佇列改進為迴圈佇列。迴圈佇列是首尾相連的佇列 當front rear變數達到底層陣列的capacity 1之後,再向前以為就變成0.入隊 1 判斷佇列是否已滿,已滿丟擲越界異常 2 不滿的話把元素查到隊尾,並且re...
迴圈佇列 622 設計迴圈佇列
設計你的迴圈佇列實現。迴圈佇列是一種線性資料結構,其操作表現基於fifo 先進先出 原則並且隊尾被連線在隊首之後以形成乙個迴圈。它也被稱為環形緩衝器。迴圈佇列的乙個好處是我們可以利用這個佇列之前用過的空間。在乙個普通佇列裡,一旦乙個佇列滿了,我們就不能插入下乙個元素,即使在佇列前面仍有空間。但是使用...