[elektro] C kérdés CORTEX M0 és M0+ KEIL fordítóra

hg12345 hg12345 at freemail.hu
Fri Aug 12 11:21:11 CEST 2016


Hi,

const uint8_t 
tudom, hogyan tárolja, de a stringek amiket tárolnék változó hosszúságúak, azért erőltetem ezt a megoldást.
A tömböt is nem közvetlenül akarom felépíteni fordítási időben, hanem egy magát hívó include file generálja.

Üdv.



SZIGETI Szabolcs <szigiszabolcs at gmail.com> írta:
>Hali!
>
>Nem tudom, hogy estr1, nstr1 stb-nek mi a típusa.
>Viszont a C  többdimenziós tömböket egydimenziós sorfolytonos módon
>tárolja, tehát az inicializálóban a belső zárójelek között 6 elemnek
>kellene lennie, bár ez egy csomó implementációt nem zavar, ha az elemszám
>összesen ugyanaz és mindkét dimenzió értéke meg van adva.
>
>Szabolcs
>
>
>2016. augusztus 11. 20:31 hg12345 írta, <hg12345 at freemail.hu>:
>
>> Hi,
>>
>> hogyan lehet a fordítót rászedni, hogy egy pointer tömb csak a FLASH-ben
>> legyen tárolva.
>> pl.: több nyelvű string készlet normál esetben így kéne írni
>>
>> const uint8_t conts* StrArray[2][6] = {{ estr1,nstr1 }; {estr2,nstr2};
>> ..... };
>>
>> vagyis constans pointer tömb constans értékekre mutatva,
>> de a fordító csak egy "const" fogad be.
>>
>> próbálkoztam const* helyet  * is, elvileg ez is jó lenne, hiszen a
>> sztringek amúgy is FLASH területen vannak, de de az eredmény ugyanaz,
>> inicializált ram területen készíti el pointer tömböt..
>>
>> const uint8_t * StrArray
>> uint8_t const * StrArray
>> ugyan azt az eredményt adja.....
>>
>> __attribute__ se hozott jó eredményt
>>
>> Mi a helyes megoldás?
>>
>> Üdv
>>
>>
>> -----------------------------------------
>>           elektro[-flame|-etc]
>-----------------------------------------
>          elektro[-flame|-etc]



More information about the Elektro mailing list