„Dinamikus adatszerkezetek tutorial” változatai közötti eltérés

Ferrero (vitalap | szerkesztései)
Ferrero (vitalap | szerkesztései)
52. sor: 52. sor:


<pre>
<pre>
  int x= ... ;
  int x= ... ;
  mp = mp + x; /* FONTOS! az mp-ben tárolt memóriacím nem x-szel fog növekedni, hanem x * sizeof(*mp)-vel, azaz a mutatott típus méretével. */
  mp = mp + x; /* FONTOS! az mp-ben tárolt memóriacím nem x-szel fog növekedni, hanem x * sizeof(*mp)-vel, azaz a mutatott típus méretével. */


  mp++;  /* a pointer tipusa int *, tehát az érték sizeof(int)-tel fog növekedni. Hasznos, ha egy dinamikus tömbben a következő elemre akarunk mutatni. */
  mp++;  /* a pointer tipusa int *, tehát az érték sizeof(int)-tel fog növekedni. Hasznos, ha egy dinamikus tömbben a következő elemre akarunk mutatni. */


  char *d= ... ;
  char *d= ... ;
  d++; /* a következő karakterre fog mutatni */
  d++; /* a következő karakterre fog mutatni */


  d--; /* ugyanez, csak visszafelé */
  d--; /* ugyanez, csak visszafelé */
</pre>
</pre>


66. sor: 66. sor:


<pre>
<pre>
  int a=2006 , b;
  int a=2006 , b;
  int *p=&a;  // ilyenkor 'p' mutat 'a'-ra
  int *p=&a;  // ilyenkor 'p' mutat 'a'-ra
  int b=(*p); // 'b' = a 'p' által mutatott címen lévő érték (2006).
  int b=(*p); // 'b' = a 'p' által mutatott címen lévő érték (2006).
  (*p)=26; // a 'p' által mutatott címre beírunk 26-ot.
  (*p)=26; // a 'p' által mutatott címre beírunk 26-ot.
</pre>
</pre>


78. sor: 78. sor:
szokott okozni régebbi progrmoknál (itt egyébként épp a long ugyanakkora, mint egy pointer). Garantáltan működő viszont a következő:
szokott okozni régebbi progrmoknál (itt egyébként épp a long ugyanakkora, mint egy pointer). Garantáltan működő viszont a következő:
<pre>
<pre>
  typedef union {
  typedef union {
  int n;
  int n;
  void* p;
  void* p;
  } int_and_ptr;
  } int_and_ptr;
</pre>
</pre>