Курсовая работа: Особливості мови програмування С

b=temp;

}

void memswap(char* a, char* b, size_t sz) {

for (int k=0; k<sz; k++)

swap(*a++,*b++);

}

void ssort(void* base, size_t n, size_t sz, CMP cmp)

{

for (int i=1; i<n; i++)

for (int j=n-1; j>=i; j--)

{

char* bj=(char*)base + j*sz;

if (cmp(bj,bj-sz))

memswap(bj,bj-sz,sz);}}

struct database

{

char* name;

int age;

};

int less_int(const void* p,const void* q)

{ return *(int*)p<*(int*)q; }

int greater_int(const void* p,const void* q)

{ return *(int*)p>*(int*)q; }

int less_str(const void* p,const void* q)

{ return strcmp(*(char**)p,*(char**)q)<0; }

int less_age(const void* p,const void* q)

{ return ((database*)p)->age<((database*)q)->age; }

int less_name(const void* p,const void* q)

{ return strcmp(((database*)p)->name,

К-во Просмотров: 640
Бесплатно скачать Курсовая работа: Особливості мови програмування С