Bug nalezen: isprint() vs diakriticka znamenka
Petr Kolar
PETR.KOLAR na vslib.cz
Pondělí Září 7 15:55:20 CEST 1998
> Situace se ale stale nemeni. V tomto konkretnim pripade zmena LC_ALL
> na LC_NUMERIC je jen zaplata na zaplatu. Misto, aby se v celem zdrojovem
> textu pro funkci real_source_write() a jeji vnorena volani na kazdem
> radku opakovalo "Pozor, tady neocekavejte zadne lokalizovane vypisy!",
> bude se muset vsude opakovat "Pozor, tady budou nelokalizovane
> numericke vypisy!". Takze az zas nekdo bude delat dalsi upravy do zdrojaku,
> zase urcite nekdy narazi. Proto jedine spravne reseni je volani
> setlocale() presunout az k radkum, ktere maji by nelokalizovane.
> (Vzpominate, jak jsem psal o vnitrnich nekonzistencich programu?.
> Pri pouhe nahrade LC_ALL -> LC_NUMERIC vznika dalsi hrozba.)
Je otazkou, jestli ten program vubec nejake lokalizovane vypisy cisel
potrebuje. Na druhou stranu asi tezko budou nekde potreba nelokalizovane
funkce z ctype.h (i kdyz stat se to muze). Proto by mi pripadalo cistsi
nastavit vse na zacatku programu.
Ale to uz je zase problem, ze asi neexistuje navod, jak udelat, kdyz
potrebuju v programu lokalziovane i nelokalizovane vypisy cisel. Pak je
potreba to vymyslet. A kdyz ma projekt desiky nebo stovky tisic radku,
tak na to vymysleni moc casu neni.
S pozdravem
--
*** Petr Kolar ***
Department of Information Technologies, Technical University of Liberec
Voronezska 1329, 461 17 Liberec, Czech Republic
Phone: +420-48-535-2371 Fax: +420-48-535-2229
E-mail: Petr.Kolar na vslib.cz http://asterix.vslib.cz/staff/kolar.html
Další informace o konferenci Linux