rendered paste bodyOUTPUT:nbrOfElements: 5nextToGet is: 1fetched from buffer: hello0nextToGet is: 2fetched from buffer: hello1nextToGet is: 3fetched from buffer: hello2nextToGet is: 4fetched from buffer: hello3nextToGet is: 5fetched from buffer: hello4nextToGet is: 0fetched from buffer:nextToGet is: 1fetched from buffer: hello0nextToGet is: 2fetched from buffer: hello1nbrOfElements: 5#include <stdio.h>#define MAX_NBR_ELEM 5#define MAX_NBR_CHAR 9char ringbuffer[MAX_NBR_ELEM][MAX_NBR_CHAR]; //char matrix with size for 10char stringsint nextToPut=0;int nextToGet=0;int nbrOfElements=0;void put(char* c){ int i=0; printf("nextToPut: %d\n",nextToPut); if(nbrOfElements>=MAX_NBR_ELEM){ printf("buffer full\n"); } else{ while(i<9){ ringbuffer[nextToPut][i]=c[i]; i++; } printf("string copied\n"); if(nextToPut<MAX_NBR_ELEM-1){ nextToPut++; printf("nextToPut is: %d\n",nextToPut); } nbrOfElements++; }}char* get(void){ if(++nextToGet>MAX_NBR_ELEM){ nextToGet=0; } if((ringbuffer[nextToGet]!=NULL)){ if(nbrOfElements<=MAX_NBR_ELEM && nbrOfElements<=0){ nbrOfElements--;// nextToGet++; } return ringbuffer[nextToGet-1]; } else{ return NULL; }}int main(){ char* pChar; char* myString0="hello0"; char* myString1="hello1"; char* myString2="hello2"; char* myString3="hello3"; char* myString4="hello4"; char* myString5="hello5"; char* myString6="hello6"; char* myString7="hello7"; put(myString0); put(myString1); put(myString2); put(myString3); put(myString4); put(myString5); put(myString6); put(myString7); printf("nbrOfElements: %d\n",nbrOfElements); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); pChar=get(); printf("nextToGet is: %d\n",nextToGet); printf("fetched from buffer: %s\n",pChar); printf("nbrOfElements: %d\n",nbrOfElements);}