Хрестоматия по программированию на Си в Unix


Мобильность и машинная зависимость программ. Проблемы с русскими буквами. - стр. 7


unsigned char UU[] = { 5, 0, 2, 4, 1, 3 }; /* в действительности - 256 элементов: UU[256] */ Ctou(c) unsigned char c; { return UU[c]; } int strcmp(s1, s2) char *s1, *s2; { /* Проигнорировать совпадающие начала строк */ while(*s1 && *s1 == *s2) s1++, s2++; /* Вернуть разность [не]совпавших символов */ return Ctou(*s1) - Ctou(*s2); }

Разберитесь с принципом формирования массива UU.

* В данной книге слова "указатель" и "ссылка" употребляются в одном и том же смысле. Если вы обратитесь к языку Си++, то обнаружите, что там эти два термина (pointer и reference) означают разные понятия (хотя и сходные).

** = "Куча" (heap, pool) - область статической памяти, увеличивающаяся по мере надобности, и предназначенная как раз для хранения динамически отведенных данных.

*** Обратите внимание, что символ \ в конце строки макроопределения позволяет продолжить макрос на следующей строке, поэтому макрос может состоять из многих строк.

**** = ASCII - American Standard Code for Information Interchange - наиболее распространенная в мире кодировка (Американский стандарт).

© Copyright А. Богатырев, 1992-95
Си в UNIX

| |




- Начало -  - Назад -  - Вперед -



Книжный магазин