[elektro] PIC C sztring

hg12345 hg12345 at freemail.hu
Sat Feb 25 18:26:50 CET 2012


Hi!

A string adott környetben definiált változó, 
valószínüleg :

typedef   const char[]  string;

Palasik Sandor <palasik at mail.datanet.hu> írta:
>>> A char[] és a char * nem ugyanaz.>
>>
> De.>
>
De mégsem.>
>
Vegyük a következő egyszerű programot:>
>
extern char *string;>
extern char array[];>
>
char *sp;>
char *ap;>
>
void x()>
{>
        sp = string;>
        ap = array;>
}>
>
És nézzük meg a belőle keletkező intel kódot:>
>
; 9    :        sp = string;>
  00003 a1 00 00 00 00   mov     eax, DWORD PTR _string>
  00008 a3 00 00 00 00   mov     DWORD PTR _sp, eax>
; 10   :        ap = array;>
  0000d c7 05 00 00 00>
        00 00 00 00 00   mov     DWORD PTR _ap, OFFSET FLAT:_array>
>
Vagy ugyanez PIC-re:>
>
                         ;x.c: 9: sp = string;>
                                global  _sp>
                                global  _string>
03F9  0800                      movf    (((_string))),w>
03FA  00A1                      movwf   (((_sp)))>
                         ;x.c: 10: ap = array;>
                                global  _ap>
                                global  _array>
03FB  3000                      movlw   ((_array))>
03FC  00A0                      movwf   (((_ap)))>
>
Marhára nem mindegy, hogy egy konstanst kell átmásolni, vagy pedig egy >
memóriacímről ki kell olvasni egy pointert.>
>
Palasik Sándor>
>
----------------------------------------->
          elektro[-flame|-etc]>




More information about the Elektro mailing list