0
這是我queue.h隊列布爾用C
#define MAX_SIZE 40
void queueInit(void);
Bool queuePeek(void);
Bool queueIsEmpty(void);
Bool queueIsFull(void);
int queueSize(void);
void enqueue(Bool data);
Bool dequeue(void);
,這是實現:
#include "queue.h"
static char head, tail, itemCnt;
static Bool buffer[MAX_SIZE];
void queueInit(void)
{
head = 0;
tail = -1;
itemCnt = 0;
}
Bool queuePeek(void)
{
return buffer[head];
}
Bool queueIsEmpty(void) {
return itemCnt == 0;
}
Bool queueIsFull(void) {
return itemCnt == MAX_SIZE;
}
int queueSize(void) {
return itemCnt;
}
void enqueue(Bool data)
{
if(!isFull()) {
if(tail == MAX_SIZE-1) {
tail = -1;
}
buffer[++tail] = data;
itemCnt++;
}
}
Bool dequeue(void)
{
Bool data = buffer[head++];
if(head == MAX_SIZE) {
head = 0;
}
itemCnt--;
return data;
}
現在我嘗試調用的函數在我的main.c
queueInit();
之後,我得到'queueInit()'的錯誤「衝突類型。」 你能幫我解決這個問題嗎?
感謝,
基督教
你把'queueInit();''int main(void)'裏面放了嗎? – timrau
main.c中有什麼? – doctorlove
發佈的代碼不會**生成上述錯誤。請發佈實際的代碼。 – 4386427