Introduceți două numere întregi, A și B, și ieșiți A și B în ordinea celui mai mare și apoi cel mai mic. Codul este următorul: Cum să referinți o coordonare variabilă & operator de adresă de preluare *Operator pointer (sau operator de acces indirect) #include "stdafx.h" #include <stdio.h> int main(int argc, char* argv[])
{ int *p1,*p2,*p,a,b; printf("vă rugăm să introduceți două numere întregi:"); scanf("%d,%d",&a,&b); p1=&a; p2=&b; dacă(a<b) {p1=&b;p2=&a;}//Accentul pe pointer {p=p1; p1=p2; p2=p; Acum i se atribuie direct valori noi pentru P1 și P2, astfel încât nu mai este nevoie să definească variabila intermediară p, iar programul poate deveni mai concis Acest algoritm nu schimbă valorile variabilelor întregi, ci valorile a doi pointeri (adresele lui a și b)
printf("a=%d,b=%d\n",a,b); printf("max=%d,min=%d\n",*p1,*p2); returnează 0;
}
|