[elektro] C fordítás közbeni adat kiírás
Zoltán Gyarmati
profikam at gmail.com
Thu Jan 10 18:15:38 CET 2013
Akkor megse ertettelek, a #define makro ertekeket ki lehet iratni, ld
pl itt: http://stackoverflow.com/questions/1562074/how-do-i-show-the-value-of-a-define-at-compile-time,
azaz pl igy:
#define XSTR(x) STR(x)
#define STR(x) #x
#define BITS 8
.
.
.
#pragma message "A bitek szama: " XSTR(BITS)
.
.
main{
}
amit szerintem nem lehet, az az, hogy egy enum auto-enumerated
ertekeit kiiratani. Azt mar csak remelni tudom, hogy ez a "pure C"
fordito is tudja ezt, de elvileg a fenti megoldas az standard.
hg12345 <hg12345 at freemail.hu> írta (2013. január 10. 17:54):
> A forditó egy pure C (C99 opciókkal), maradnék a hordozható bárhol kisegítő programok nélkül forditható verziónál.
>
> Köszönöm mindenkinek a segítséget
>
> Üdv
>
>
>
>
> "Zoltán Gyarmati" <profikam at gmail.com> írta:
>>hm, kb ertem :)>
> En lehet elgondolkodnek azon, hogy ezt a tombot forditas elott egy>
> scripttel generaltatnam a makefilebol, es ugyanez a script definialna>
> makrokat is az egyes elemekhez egy szinten generalt header fileban,>
> majd ahol ezeket az ertekeket hasznalni akarod, oda a makrokat irod,>
> mikor kodolsz, meg persze beincludold ezt a generalt headert. Ebben a>
> scriptben persze aztan azt irathatnal ki amit akarsz, sot, valami>
> olyasmit is lehetne trukkozni, hogy te egy egyszeru textfileban csak>
> definialod a menu szerkezetet (de ez lehet akar xml is), majd a>
> tombodet meg a makrokat ebbol generalna a script. Persze ehhez kell>
> venni egy nagy levegot, es raszanni egy munkanapot, de utana szerintem>
> konnyebb lenne az eleted.>
>>
> hg12345 <hg12345 at freemail.hu> írta (2013. január 10. 17:01):>
>> Nehéz elmagyarázni,>
>>>
>> A készülék menüje egy tömbben van tárolva (több mint 400 bejegyzés) , a tömb indexe az enummal meghatározott felsorolás tipus. Ez a tömb nem tömb, hanem egy többszörös fa struktura tömbben tárolva. A generálás nem lineárisan egymás után megadva történik, hanem szerkezett szerint, igy csak nagyjából tudom mi hol van, de kezelés szempontjából teljesen mindegy.>
>> Ami nem, hogy a kommunikációs felületen a tömbben való elhelyezkedés adja a MODBUS regiszter címét, tehát az tisztán látást segítő index alatt van a regiszter cimem van (rejtve), ami itt nem éppen nem szerencsés.>
>>>
>> A kinyerésére csak egy indexekkel feltöltött tömböt kell tárolnom, valami bugyuta hivatkozással, hogy ne optimalizálja ki :-(, és debug üzemmódban onnan kinézhetem az indexek sorszámát.>
>>>
>> Lassú és hosszadalmas.....>
>>>
>> Már mindent átnéztem, de nem találtam erre megoldást, egész egyszerűen nem tudom elhinni, hogy fordítási időben ennyire nem tud segíteni a fordító.>
>>>
>> SZIGETI Szabolcs <szigiszabolcs at gmail.com> írta:>
>>>HalI!>>
>>>>
>> Mármint azt szeretnéd, hogy van egy enum-od, és az abban szereplő>>
>> szimbolikus értékeknek megfelelő számot szeretnéd megtudni?>>
>> Ez miért kell? Éppen azért van az enum, hogy az értékek ne homályosítsák el>>
>> tisztánlátásunkat.>>
>>>>
>> Ha viszont nagyon akarod, akkor az enumban közvetlenül megadhatod az>>
>> értéket.>>
>>>>
>> Szabolcs>>
>>>>
>>>>
>>>>
>> 2013. január 10. 15:51 hg12345 írta, <hg12345 at freemail.hu>:>>
>>>>
>>> Hi,>>
>>>>>
>>> már kérdeztem, de annyira hiányzik, hogy rákérdezek mégegyszer.>>
>>>>>
>>> Nincs megoldás fordításkozben a #warning egy enumerátor értékét kiírjam a>>
>>> listázó képernyöre?>>
>>>>>
>>> Tölem lehet akármilyen macro, de nagyon-nagyon hiányzik egy ilyen>>
>>> lehetöség :-((>>
>>>>>
>>> Fordítás után is csak egy tömbbe letéve tudom elöhívni, nincs erre>>
>>> egyszerűbb megoldás... normál C99 fordító.>>
>>>>>
>>> Üdv>>
>>>>>
>>>>>
>>> ----------------------------------------->>
>>> elektro[-flame|-etc]>>
>> ----------------------------------------->>
>> elektro[-flame|-etc]>>
>>>
>>>
>> ----------------------------------------->
>> elektro[-flame|-etc]>
>>
>>
>>
> -- >
> Zoltan Gyarmati>
> Gtalk: profikam at gmail.com>
> MSN: profikam at theend.hu>
> ICQ: 335693662>
> Skype: profikam3151>
>>
> Phone number: 0036-30-608-30-79>
>>
> ----------------------------------------->
> elektro[-flame|-etc]>
>
>
> -----------------------------------------
> elektro[-flame|-etc]
--
Zoltan Gyarmati
Gtalk: profikam at gmail.com
MSN: profikam at theend.hu
ICQ: 335693662
Skype: profikam3151
Phone number: 0036-30-608-30-79
More information about the Elektro
mailing list