Здравствуйте, GarryIV, Вы писали:
GIV>сорри в первый раз ошибка закралась — правильно так
GIV>задачка из третьего издания Страуструпа (§6.6 задача 15)
GIV>GIV>void send(int *to,int *from,int count)
GIV>{
GIV> int n = (count+7)/8;
GIV> switch(count%8)
GIV> {
GIV> case 0: do{ *to++ = *from++;
GIV> case 7: *to++ = *from++;
GIV> case 6: *to++ = *from++;
GIV> case 5: *to++ = *from++;
GIV> case 4: *to++ = *from++;
GIV> case 3: *to++ = *from++;
GIV> case 2: *to++ = *from++;
GIV> case 1: *to++ = *from++;
GIV> } while(--n>0);
GIV> }
GIV>}
GIV>
GIV>второй день покоя не дает.
Это называется Duff's device (Tom Duff 1983)
http://www.lysator.liu.se/c/duffs-device.html