#include #include #include "course.h" #define LENGTH_OF_BUFFER 50 @implementation Course -init:(char*)nam subject:(char*)sub course:(int)cour days:(char*)day call:(int)cal instructor:(char*)prof startsAt:(int)start endsAt:(int)stop { begin = start; end = stop; call = cal; course = cour; instructor = strdup(prof); subject = strdup(sub); days = strdup(day); name = strdup(nam); buffer = malloc(sizeof(*buffer) * LENGTH_OF_BUFFER); return [super init]; } -free { free(subject); free(days); free(name); free(buffer); return [super free]; } -(char*)getCourseNumber { snprintf(buffer, LENGTH_OF_BUFFER, "%s %i", subject, course); return buffer; } -(char*)getCourseName { snprintf(buffer, LENGTH_OF_BUFFER, "%s", name); return buffer; } -(int)getCallNumber { return call; } -(char*)getTimes { snprintf(buffer, LENGTH_OF_BUFFER, "%i-%i", [self getStartTime], [self getEndTime]); return buffer; } -(int)getStartTime { return begin; } -(int)getEndTime { return end; } -(char*)getInstructorName { snprintf(buffer, LENGTH_OF_BUFFER, "%s", instructor); return buffer; } -(char*)getDays { snprintf(buffer, LENGTH_OF_BUFFER, "%s", days); return buffer; } -(int)getBufferLength { return LENGTH_OF_BUFFER; } @end