☰ Dersleri Göster

Pointers

Bu derste pointer'ların kullanımı göreceksiniz.

Kursa 27.99 TL'ye kayıt olmak için TIKLAYINIZ.

Pointer sayesinde 2 değişkenin ramdeki değerlerini değiştiren fonksiyonu yazma ve kullanma

#include <iostream>

using namespace std;

void degerleriDegistir(int *x,int *y){
    int temp;
    temp = *x;
    *x=*y;
    *y= temp;

}

int main()
{

    int sayi1,sayi2,temp;

    cout<<"Lutfen  2 adet sayi giriniz"<<endl;
    cin>>sayi1>>sayi2;

    cout<<"Sayi1 : "<<sayi1<<" Sayi2 : "<<sayi2<<endl;

    degerleriDegistir(&sayi1,&sayi2);

    cout<<"Sayi1 : "<<sayi1<<" Sayi2 : "<<sayi2<<endl;


    return 0;
}

Karakter dizilerini içinde barındıran bir dizi oluşturup pointer sayesinde dizinin içerisindeki elemanlara ulaşma

#include <iostream>
#include <string.h>
using namespace std;

int main()
{

    string takimlar[]={"Galatasaray","Fenerbahce","Besiktas","Trabzonspor"};

    string *takimlarAdres = takimlar;

    cout<<takimlarAdres<<endl;
    for(int i=0;i<4;i++)
        cout<<*(takimlarAdres+i)<<endl;
    return 0;
}

Değişkenin adresini fonksiyona parametre olarak gönderip 2 değişkenin değerlerini değiştirme

#include <iostream>
using namespace std;
void sayilariDegistir(int &x,int &y){

    int temp;

    temp = x;
    x = y;
    y = temp;

}
int main()
{
    int sayi1 = 55;
    int sayi2 = 65;
    cout<<sayi1<<" "<<sayi2<<endl;
    sayilariDegistir(sayi1,sayi2);
    cout<<sayi1<<" "<<sayi2<<endl;

    return 0;
}

const kullanımı

#include <iostream>
using namespace std;
void araligiBastir(const int *x,const int *y){

    for(; x != y ; x++){
        cout<<*x<<endl;
    }

}
int topla(const int x,const int y){

    return x+y;
}
void diziyiYazdir(const string *dizininAdresi){

    const string *geciciDizi = dizininAdresi;

    for(; dizininAdresi != (geciciDizi+2);dizininAdresi++){
        cout<<*dizininAdresi<<endl;
    }
}
int main()
{
    string dizi[] = {"Kaan","Academy","Basarinin","Adresi"};
    diziyiYazdir(dizi);
    return 0;
}