Navigation

2.3.2 Zeigeroperatoren

Der Zeigeroperator & liefert die Adresse seines Operanden.
allg.: & lvalue

VERBATIM/b232a: 

 int a;
 int *pi;
 pi = &a;            /* pi zeigt auf a */

Der Zeigeroperator * löst eine Adressbezugnahme auf, d.h. er ermöglicht, auf das Datenobjekt ''indirekt'' zuzugreifen, auf welches der Operand verweist.
allg.: * zeiger

VERBATIM/b232b: 

 int x, y, *pint;

 x = 10;
 pint = &x;
 y = *pint - 1;                /* y = x - 1; */
 *pint = 0;                        /* x = 0; */
 *pint += 2;                      /* x += 2; */

BEISPIELE/b232.c: 

#include <stdio.h>

void tausche(x, y)
   int *x, *y;
{
   int z;

   z = *x; *x = *y; *y = z;
}  /* "return" nicht notwendig */

main()
{
   int a, b;
   void tausche();

   a = 4; 
   b = 8;
   printf("a= %d, b= %d\n", a, b);
   tausche(&a, &b);
   printf("a= %d, b= %d\n", a, b);   
}

Navigation