Hi. Iam stuck with how to make a circular queue that are based on a struct. Have been reading about the implementation but cant really understand it fully.

Here is what i got so far.

Code:
#define SIZE 10
typedef struct
{
    char reg;
    char brand;
    int modelyear;
    int mileage;
}car;

typedef struct
{
    struct *car_queue;
    int start;
    int stop;
}circular;

car keyinput();


int main(int argc, char **argv)
{
    int i;
    car item[SIZE];
    
    printf("Add %d cars to the que.\n\n",SIZE);
    for(i=0;i<SIZE;i++){
        item[i]=keyinput();
    }
    return 0;
}


car keyinput()
{
    car item1;


    puts("Number:");
    scanf("%s",item1.reg);
    fflush(stdin);
    puts("");
    puts("Brand:");
    scanf("%s",item1.brand);
    fflush(stdin);
    puts("");
    puts("Modelyear:");
    scanf("%d",&(item1.modelyear));
    fflush(stdin);
    puts("");
    puts("Milage:");
    scanf("%d",&(item1.milage));
    fflush(stdin);


    return item1;
}
Whould be nice with some help here.