CCS printf()
Nya'ri Viktor
office at flexelec.hu
Mon Jul 11 18:23:52 CEST 2005
>> Ez igy is van rendjen. Ha nagyobb a szam, akkor nem fogja levagni, hanem
>> kimegy minden digit.
>> Stringnel lehet csak ilyet.
>
>
> Nemtom, mi az ANSI C szabvány, de a CCS (ami _nem_annyira_ ANSI
> tudomásom szerint) pl. az int16-nál bizony levágja, úgy ahogy írtam.
> Mert ha van pl. egy szám, ami mondjuk 0..1023 tartományban mozoghat,
> annak ugye már nem elég az int8, használnom kell az int16-t; viszont ha
> mondjuk LCD-re akarom kiiratni, akkor meg elég a 4 digit, és lehet hogy
> nincs 5 digitnyi helyem, csak 4. Szal ilyenkor bizony jó ez a funkció,
> és a CCS-nél int8-nál és int16-nál ez müködik is; akkor szerintem
> logikus lenne, hogy int32-nél is így müködjön, de a manualja is ezt írja:
Bocs, hülyeséget írtam, mert ha az értéke max. 1023, akkor is csak max.
4 digitet irna ki; akkor meg nemtom, miért van benne ez, de hogy pl.
int16-nál kajakra levágja a felsöbb digiteket, az tuti; ezt most
kipróbáltam.
int16 valami = 0xFFFF;
printf("%3lu",valami) az 535-t ir ki a 65535 helyett; ez tuti. Na én
ebből indultam ki; valahol biztos szükség van erre; mittomén.
More information about the Elektro
mailing list