[elektro] PIC C sztring
hg12345
hg12345 at freemail.hu
Sun Feb 26 18:47:29 CET 2012
Hi!
Éppen ezt akartam írni, hogy a string a typedef-fel létrehozott típus, csak hibásan írtam a typedef-t.
A PC fordítóban majd nézd meg a megfelelő headerben.
addig is a helyes megoldás:
typedef char const String[];
Ami különbség lehet a pointeres megadásban
hogy
const *char
char *const
nem ugyanaz, mert ez egyik egy konstans pointer mig a másik egy konstans helyre mutató pointer :-)
A const és a persistent(ha van) leginkább a linkernek utasítás melyik segmensbe töltse az adat adatot vagy változót.
Amúgy optimalizáld a két definició használatád, és ugyanazt a kódot kapod :-). Az optimalizáció nélkül csak a forditó macrozása látszik a kódon....
Palasik Sandor <palasik at mail.datanet.hu> írta:
>Üdv!>
>
> A string adott környetben definiált változó,>
> valószínüleg :>
>>
> typedef const char[] string;>
>
Valószínűleg nem, mert ez szintaktikus hibát ad. Másrészt a string nem>
fentartott név C-ben.>
>
De hogy egyértelmű legyen, átneveztem a változókat:>
>
; 9 : suwegrfib = sihgdfpioh;>
00003 a1 00 00 00 00 mov eax, DWORD PTR _sihgdfpioh>
00008 a3 00 00 00 00 mov DWORD PTR _suwegrfib, eax>
; 10 : agfowshbfg = aasifhisa;>
0000d c7 05 00 00 00>
00 00 00 00 00 mov DWORD PTR _agfowshbfg, OFFSET>
FLAT:_aasifhisa>
>
Szóval továbbra is azt állítom, hogy az extern char * és az extern char []>
nem ugyanaz.>
>
Palasik Sándor>
>
----------------------------------------->
elektro[-flame|-etc]
More information about the Elektro
mailing list