C sztring
hoyuka hoya
hoyuka at c2.hu
Tue Dec 27 19:46:59 CET 2005
Hali,
A konstansokkal ossze szoktam zavarodni, mert regen C-eztem mar.
Szerintem ennek tuti jonak kene lennie:
const int8 * szoveg="alma";
Esetleg ennek:
const int8 * const szoveg="alma";
Ez meg csunnya:
int8 const *szoveg[5]="alma";
Ez egy ot elemes pointertomb, szerintem.....
udv.
hoyuka
Nya'ri Viktor said:
> Köszi!
> A második szintaktikája:
> const int8 const *szoveg="alma";
>
> ez így nem oké, így viszont már elfogadta:
> int8 const *szoveg[5]="alma";
>
> viszont nem úgy mu"ködik, mint ahogy kellene, azaz minden második
> karaktert tárolja csak el.
> Pl. az
>
> int8 const *szoveg[9]="abcdefgh";
> for (i=0; i<9; i++)
> {printf(lcd,"%x ",szoveg[i]);}
>
> így adja vissza:
> 61 63 65 67 00 00 00 00 00
>
> De hogy miért csak minden másodikat tárolja el, és a végét meg feltölti
> 00-kal??? Ki érti ezt?
>
> Az elso" formula viszont oké.
> const int8 szoveg[4]={'a','l','m','a'};
>
> Bár jobb lenne, ha teljesen folyamatosan írva is meg lehetne adni, de
> így is jobb mint a semmi.
> Esetleg ha van még valakinek tippje, azt megköszönném.
>
> hoyuka hoya wrote:
>> Szia,
>>
>> Mondok ket megoldast ami szerintem mukodik:
>>
>> 1. const int8 szoveg[4]={'a','l','m','a'};
>> 2. const int8 const *szoveg="alma";
>>
>> Ez uttobinal 0 lezaro karakter lesz a tomb vegen, tehat 5 elemu lesz.
>>
>> udv.
>> hoyuka
>
>>>De hogy lehet azt megoldani, hogy úgy tudjam megadni a szöveget, mint
>>>mondjuk a printf-ben, hogy egybefüggõ szövegként gépelem be? Azaz valami
>>>ilyesmi kellene:
>>>
>>>int8 const szoveg[4] = {"alma"};
>>>
>>>Vagy ha ilyen lehetõség nincs, még így is jó lenne, hogy:
>>>
>>>int8 const szoveg[4] = {"a","l","m","a"};
>
> -----------------------------------
> Szponzorunk: http://tonerbolt.hu/
>
--
http://hoyuka.myip.hu
-------------------------------------
Tele van a postaládája? C2MAIL 30 MB e-mail tárhely ingyen!
http://mail.c2.hu
More information about the Elektro
mailing list