用C C 寫的佇列在VS2012上執行成功

2021-08-01 13:39:37 字數 1915 閱讀 7360

這是我第一次自己寫佇列,以前都是看linux核心原始碼中的佇列,看得多寫得少,現在的驅動基本不需要自己寫太多**,只需要你懂原理會修改就ok。

好了廢話不多說我們進入正題吧!

下面是我寫的兩個**,乙個是數字的另乙個是字串的:

一.數字或字元型

#pragma  once

#include "stdafx.h"

#include "iostream"

//佇列的最大資料長度

#define maxsize 4096

typedef char elemtype;

//佇列的資料單元

typedef struct sqqueue;

//初始化佇列 void init_jstrqueue(sqqueue &jstrqueue)//銷毀佇列void destroy_jstrqueue(sqqueue &q)}//清空佇列void clear_jstrqueue(sqqueue &q)//判斷佇列int isempty_jstrqueue(sqqueue

&q)//判斷佇列int isfull_jstrqueue(sqqueue &q)//獲取佇列長度int getlength_jstrqueue(sqqueue &q)//取得佇列的的隊頭void gethead_jstrqueue(sqqueue &q,elemtype

*x) else}//取得佇列的的隊尾void getrear_jstrqueue(sqqueue &q,elemtype *x) else}//插入佇列void en_jstrqueue(sqqueue &q,elemtype x) else }//出佇列void de_jstrqueue(sqqueue &q,elemtype *x) else }//列印佇列void print_jstrqueue(sqqueue &q)sqqueue;

//初始化順序佇列(迴圈佇列) init_sqqueue();

void init_sqqueue(sqqueue &jstrqueue)

//銷毀順序佇列(迴圈佇列)destroy_sqqueue(sqqueue* q);

void destroy_sqqueue(sqqueue &q)

}//清空順序佇列(迴圈佇列)clear_sqqueue(sqqueue* q);

void clear_sqqueue(sqqueue &q)

//判斷順序佇列(迴圈佇列)是否為空isempty_sqqueue(sqqueue* q)

int isempty_sqqueue(sqqueue &q)

//判斷順序佇列(迴圈佇列)是否已滿 isfull_sqqueue(sqqueue* q);

int isfull_sqqueue(sqqueue &q)

//求得順序佇列(迴圈佇列)的長度getlength_sqqueue(sqqueue* q);

int getlength_sqqueue(sqqueue &q)

//取得順序佇列(迴圈佇列)的的隊頭gethead_sqqueue(sqqueue* q,elemtype *x);

void gethead_sqqueue(sqqueue &q,elemtype *x)

else }

//取得順序佇列(迴圈佇列)的的隊尾getrear_sqqueue(sqqueue* q,elemtype *x);

void getrear_sqqueue(sqqueue &q,elemtype *x)

else }

//入順序佇列(迴圈佇列)en_sqqueue(sqqueue* q,elemtype x);

void en_sqqueue(sqqueue &q,elemtype *x)

else

{ for(int i=0; i

vs2012在已有專案上生成和使用dll動態鏈結庫

假設有兩個c 專案a b,並且都定義了很多的子函式,這些子函式之間呼叫關係複雜,如果b需要通過使用dll庫的方式呼叫a中的乙個子函式 或者多個 怎麼辦?假設a中定義了很多的子函式,其中有乙個子函式add,其函式宣告所在標頭檔案和函式定義所在原始檔分別為 add.h int add int a,int...

vs2012在已有專案上生成和使用dll動態鏈結庫

假設有兩個c 專案a b,並且都定義了很多的子函式,這些子函式之間呼叫關係複雜,如果b需要通過使用dll庫的方式呼叫a中的乙個子函式 或者多個 怎麼辦?假設a中定義了很多的子函式,其中有乙個子函式add,其函式宣告所在標頭檔案和函式定義所在原始檔分別為 add.h int add int a,int...

Kinect C 程式在vs2012下的配置

在vs2010上的配置大約是 a.在vs2010專案中,設定vc 目錄 包含目錄中加入 kinectsdk10 dir inc 庫目錄中加入 kinectsdk10 dir lib x86 b.新增特定庫 在鏈結器中設定附加依賴項,填入kinect10.lib c.標頭檔案包含 include in...