Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <malloc.h>
- #define MAX_STUDENTS 30
- typedef struct
- {
- int id;
- /* more fields here */
- } Student;
- Student *studentDb[MAX_STUDENTS] = { 0 };
- Student *AddStudent(int id /* more params here */)
- {
- size_t index = 0;
- for (; index < MAX_STUDENTS && studentDb[index]; index++)
- ;
- studentDb[index] = malloc(sizeof(Student));
- studentDb[index]->id = id;
- return studentDb[index];
- }
- Student *DeleteStudent(int id)
- {
- for (size_t index = 0; index < MAX_STUDENTS; index++)
- {
- if (studentDb[index] && (studentDb[index]->id == id))
- {
- free(studentDb[index]);
- studentDb[index] = NULL;
- }
- }
- return NULL;
- }
- Student *GetStudent(int id)
- {
- for (size_t index = 0; index < MAX_STUDENTS; index++)
- {
- if (studentDb[index] && (studentDb[index]->id == id))
- {
- return studentDb[index];
- }
- }
- return NULL;
- }
- void CleanStudentDb()
- {
- for (size_t index = 0; index < MAX_STUDENTS; index++)
- {
- if (studentDb[index])
- {
- free(studentDb[index]);
- studentDb[index] = NULL;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement