Chyba v triedeni cs_CZ & sk_SK

Karel Zak zakkr na zf.jcu.cz
Pátek Květen 30 09:36:11 CEST 2003


On Fri, May 30, 2003 at 09:09:30AM +0200, Ing. Pavel PaJaSoft Janousek wrote:
> > -----Original Message-----
> > From: Karel Zak [mailto:zakkr na zf.jcu.cz] 
> >  A nebyla to SQL norma? :-) Tam varchar(10) znamena deset znaku a tedy
> >  treba 20 byte pokud jsou to multibyte znaky. Ale pouzivat tuto logiku
> >  u C si neumim predstavit. To by tak bylo chapano jen v sizeof() nebo
> 
> 	Ja take ne, zejmena proto ne, ze C je nizkourovnovy jazyk a ma
> jasne definovanou jednotku (fyzickou velikost) pro bit, byte, int apod.

 Tim jsi si odpovedel.

> (mozna i endian ale to si nejsem jisty). A prave z toho duvodu opakuji
> furt to same - jazyk C/C++ neni na znaky vetsi jak 1 byte vubec

 Right tool for right task at right time?

 Jasne treba strojovy jazyk na tom bude jeste o poznani hure. Urcite
 najdeme i dalsi veci, ktere nejsou primo na urovni jazyka v C moc
 resene, ale rada lidi ma ten jazyk prave pro tu nizkourovnovost rada
 a ta uroven nizkourovnovost je tak genialne nastavena, ze pri pouziti
 knihoven, ktere podobne problemy resi, neni nutne samotny jazyk
 podobnou veci "spinit". A pri tom se v tom da porad jeste programovat,
 narozdil od mnoha nizsich nebo vyssich jazyku, ktere jsou bud
 nepouzitelne slozite nebo na urovni jazyka resi veci, ktere casem
 moralne a nekdy i po strance myslenky jazyka ucini ten jazyk
 nepouzitelny.

> pripraven a nepocita s nimi jednoduse proto, ze o nich nic nevi a nijak
> je nedefinuje, at uz syntaxi jazyka, tak "core" libC - ukazte mi opak,
> zejmena ti, kteri tvrdi, ze resit toto v C je stejne narocne jako
> vetsina beznych jinych praci.

 Resit a pouzivat se to da, viz. GTK. Obtiznost je o pocitu. IMHO
 nejvetsi problem je pokud uz je pouzivan unicode tak dosahnout toho,
 aby cele prostredi, ktereho se program nejak dotyka bylo v unicodove.
 To se daleko lepe resi treba v Jave, ktere ma to stesti, ze bezi ve
 vlastnim "svete". V C/C++ je nutne osetrovat veci jako, ze program
 ciste delany v unicode dostane od systemu error hlasku v latin2 (pokud 
 vubec ciste a prenositelne ten program dokaze zjistit takovou ptakovinu 
 jako jake kodovani to prostredi v kterem bezi pouziva :-)

        Karel


 Norma (http://std.dkuug.dk/JTC1/SC22/WG14/www/docs/n843.htm):

 6.5.3.4  The sizeof operator

 Semantics

       [#2] The sizeof operator yields the size (in bytes)  of  its
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
       operand,  which  may  be  an expression or the parenthesized
       name of a type.  The size is determined from the type of the
       operand.   The  result  is  an  integer.  If the type of the
       operand is a variable length  array  type,  the  operand  is
       evaluated;  otherwise,  the operand is not evaluated and the
       result is an integer constant.

-- 
 Karel Zak  <zakkr na zf.jcu.cz>
 http://home.zf.jcu.cz/~zakkr/


Další informace o konferenci Linux