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