Search
 
SCRIPT & CODE EXAMPLE
 

CPP

how to initialize a queue in c

#include <stdio.h>

#define MAX_QUEUE_SIZE 100;

typedef struct queue {
    int queue[MAX_QUEUE_SIZE];
    int currSize;
    int head;
    int tail;
} queue;

void initQueue(queue *queue) {
    queue->currSize = 0;
    queue->pos = 0;
    queue->head = 0;
    queue->tail = 0;
}

void enqueue(queue *queue, int e) {
    if (isFull()) printf("Queue is full!");

    queue->queue[queue->tail] = e;
    queue->tail = (queue->tail + 1) % MAX_QUEUE_SIZE;
    q->currSize = q->currSize + 1;
}

int dequeue(queue *queue) {
    if (isEmpty()) printf("Queue is empty!");

    int toDequeue = queue->head;
    queue->head = (queue->head + 1) % MAX_QUEUE_SIZE;
    q->currSize = q->currSize - 1;

    return toDequeue;
}

int isEmpty(queue *queue) {
    return (queue->head == queue->tail);
}

int isFull(queue *queue) {
    return (currSize == MAX_QUEUE_SIZE);
}

int main() {
    /* how do I initialize the queue and enq/deq to test? */
    printf("Hello World!
");
}
Comment

PREVIOUS NEXT
Code Example
Cpp ::  
::  
Cpp ::  
::  
Cpp ::  
::  
Cpp ::  
::  
::  
::  
Cpp ::  
::  
:: how to check if vector is ordered c++ 
::  
:: how to fill vector from inputs c++ 
::  
:: arduino falling edge 
::  
::  
:: evennumbers 1 to 100 
::  
::  
Cpp ::  
::  
Cpp :: bitmap 
Cpp ::  
::  
::  
Cpp :: person parametr cpp 
Cpp :: initalising array c++ 
ADD CONTENT
Topic
Content
Source link
Name
2+2 =