1.                                                

C++ Dersleri - 22)POİNTERLAR - 5[ÇEVİRİ]

'C/C++' forumunda Hattab tarafından 10 Şubat 2016 tarihinde açılan konu

  1. Hattab

    Hattab New Member

    Katılım:
    22 Ekim 2015
    Mesaj:
    550
    Beğeniler:
    4
    Ödül Puanları:
    0

    POİNTER DİZİLERİ(ARRAYLARI)


    Pointerların dizilerinin konseptini anlamadan önce 3 integer'dan oluşan aşağıdaki örneğe bakalım:

    [HASHTAG]#include[/HASHTAG] <iostream>

    using namespace std;
    const int MAX = 3;

    int main ()
    {
    int var[MAX] = {10, 100, 200};

    for (int i = 0; i < MAX; i++)
    {
    cout << "Value of var[" << i << "] = ";
    cout << var << endl;
    }
    return 0;
    }

    Yukardaki kodu çalıştırırsak bize şu sonucu verir:
    Value of var[0] = 10
    Value of var[1] = 100
    Value of var[2] = 200

    İnt,char veya herhangi bir veri tipini gösteren pointerları depolayan bir arrayı değiştirmek istersek bir sorun olabilir.Aşağıdaki koda bakalım:
    int *ptr[MAX];

    Bu deklarasyon MAX integer pointerların bir dizisi olarak ptr tanımlar.Böylece, ptr'deki her eleman int değeri gösteren bir pointeri tutar.Aşağıdaki örnekte 3 integer kullanan bir array gösterilmiştir:

    [HASHTAG]#include[/HASHTAG] <iostream>

    using namespace std;
    const int MAX = 3;

    int main ()
    {
    int var[MAX] = {10, 100, 200};
    int *ptr[MAX];

    for (int i = 0; i < MAX; i++)
    {
    ptr = &var; // assign the address of integer.
    }
    for (int i = 0; i < MAX; i++)
    {
    cout << "Value of var[" << i << "] = ";
    cout << *ptr << endl;
    }
    return 0;
    }

    Yukardaki kod çalıştırıldığında aşağıdaki sonucu verir:
    Value of var[0] = 10
    Value of var[1] = 100
    Value of var[2] = 200

    Ayrıca aşağıdaki gibi string listesini saklamak için karakterleri gösteren pointerların arrayını kullanabilirsiniz:

    [HASHTAG]#include[/HASHTAG] <iostream>

    using namespace std;
    const int MAX = 4;

    int main ()
    {
    char *names[MAX] = {
    "Zara Ali",
    "Hina Ali",
    "Nuha Ali",
    "Sara Ali",
    };

    for (int i = 0; i < MAX; i++)
    {
    cout << "Value of names[" << i << "] = ";
    cout << names << endl;
    }
    return 0;
    }

    Yukadaki kodu çalıştırdığınızda aşağıdaki çıktıyı verir:
    Value of names[0] = Zara Ali
    Value of names[1] = Hina Ali
    Value of names[2] = Nuha Ali
    Value of names[3] = Sara Ali

    Alıntıdır.
     

Bu Sayfayı Paylaş

Share