PIC C sztring változó
Nya'ri Viktor
office at flexelec.hu
Tue Jan 10 08:21:52 CET 2006
Köszönöm mindenkinek a hozzászólásokat!
Összegezve az egészet: tényleg nincs rá jó (és egyben elegáns) megoldás :-(
Nagyon sok rövid (20 byte-os) stringet kellene pakolgatni.
printf, sprintf nem játszik, mert baromi hosszú kódot fordít.
memcpy nem játszik, mert ROM-ból kéne RAM-ba pakolászni
strcpy lenne a jó megoldás, de ilyen rövid stringeknél többe kerül a
leves, mint a hús (kb. 26 sor+lookup_table-t fordít belőle)
Makró meg egyéb nyalánkságok nem tetszenek.
Marad a legegyszerübb, de kicsit melósabb megoldás: byteonként adok
értéket, így 2 sor/byte (MOVLW + MOVWF); kiszámoltam, így lesz a
legrövidebb a kód (eléggé helyszűkében vagyok), mert sok benne az üres
rész (space) így ott is tudok csalni.
Azért mégegyszer köszi mindenkinek a tippeket!
> A helyes válasz: nincs rá megoldás :-(
>
> Kezdőértékként lehet stringet rakni karaktertömbbe, de utólagos
> értékadásként nem.
>
> Ha van hol tárolnod a stringet, amit bemásolnál, akkor memcpy vagy strcpy
> függvényel megoldhatod, de ekkor végül kétszer annyi memóriát használsz.
>
> Ha nem akarod kétszer tárolni, akkor csak karakterenként megy.
>
> Kód szempontjából az sem egy tragédia. Kb. 2 utasítás lesz karakterenként.
> Leírni persze macerás, de kb. 10 karakter alatt rövidebb, mint a memcpy.
>
> Palasik Sándor
More information about the Elektro
mailing list