Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Aleksey Cheusov                      2:5020/400     10 Oct 2005  14:19:17
 To : Pavel Marenyuk
 Subject : Re: Бухгалтерия БЭСТ под Линуксом
 -------------------------------------------------------------------------------- 
 
 
  AC>> А факты имеют место быть из-за, во-первых, совршенно идиотских
  AC>> стандартов в некоторых местах, и, во-вторых, из-за идиотских
  AC>> реализаций, как самого софта, так и libc.
  AC>> Вот что спрашивается мешает написать isalpha
  AC>> вот так
  AC>> 
  AC>> int isalpha (int ch)
  AC>> {
  AC>>    assert ((ch >= 0 && ch < 128)
  AC>>            || (MB_CUR_MAX == 1 && ch >= 0 && ch < 256
  PM> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^)
  AC>>            || ch == EOF);
  AC>> 
  AC>>    return table [ch + 1]; // EOF == -1
  AC>> }
  AC>> 
  AC>> А то, что тогда вообще ВСЕ перестанет работать,
  AC>> но зато появятся шансы софт и библиотеки исправить.
  AC>> Вместо этого в GLIBC сделали соверешнно обратное,
  AC>> спрятали ошибку поглубже.
 
  PM> Вот подчеркнутое и мешает.
  PM> Блин, 10 лет пошло на то стобы убедить писучую братию в ком что >128
  PM> тоже бывают буквы. Сколько ж лет еще убеждать что >256 бывают.
  PM> Hепробиваемый аргумент - "иначе все развалится".
 
 Подчеркнутое не мешает. Оно HЕОБХОДИМО для нормальной работы
 и 8-bit-ными кодировками и с UTF-8,
 в последнем HЕТ букв 128-255. Есть конечно и другие multibyte кодировки
 (Shift-JIS - ASCII несовместим, и посему урод, не в счет),
 но под юниксами практически только utf-8 и спользуется.
 
 -- 
 Best regards, Aleksey Cheusov.
 --- ifmail v.2.15dev5.3
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Бухгалтерия БЭСТ под Линуксом   Aleksey Cheusov   10 Oct 2005 14:19:17 
Архивное /ru.linux/172837a5744e6.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional