değişkenTipi* GöstergeAdi şeklinde tanımlanır.
int türünde bir a pointeri
int* a; veya int *a; şeklinde tanımlanır.
cout << a ; yazarsak a pointerının hangi adresi tuttuğunu görürüz.
cout << *a; yazarsak a pointerının tuttuğu adresdeki verinin değerini görürüz.
Soru:
İnt türünde iki adet değişkenimiz olsun. Bu değişkenlerin değerlerini birbiriyle değiştiren bir fonksiyon yazalım.
Kodlar:
İnt türünde iki adet değişkenimiz olsun. Bu değişkenlerin değerlerini birbiriyle değiştiren bir fonksiyon yazalım.
Kodlar:
#include <iostream>
using namespace std;
void degistir(int *a, int *b);//fonksiyon prototipi
void main(){
int a = 100;
int b = 200;
cout <<"-- degisimden once --"<< endl;
cout << "a: " << a << " b: " << b << endl;
degistir(&a, &b);//& adres operatörüdür. a ve b'nin adresini fonksiyona gönderdik.
cout <<"-- degisimden sonra -- "<< endl;
cout <<"a: "<< a << " b: " << b << endl;
system("PAUSE");
}
void degistir(int *a, int *b){
int x = *a;//a pointerındaki değeri x'a atadı.
int y = *b;//b pointerındaki değeri y'ye atadı.
*a = y;//a pointerının değerine y'yi atadı.
*b = x;//b pointerının değerine x'i atadı.
}
Çıktı:
Hiç yorum yok:
Yorum Gönder