Dereference Operatörü
Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 3 / 56.
*) vazgeçilmez hâle geldiği nokta burasıdır.Dereference operatörü *, bir işaretçinin gösterdiği bellek adresinde depolanan değere erişmek için kullanılır. * işaretini bir işaretçi değişkeninin önüne koyduğunuzda, adresi “izler” ve orada depolanan gerçek değeri verir.Adres operatörünün (&) bir değişkenin bellek adresini almak için, başvuru kaldırma operatörünün (*) ise bu adresteki değere erişmek için kullanıldığını unutma.int number = 42;
int* ptr = &number; // ptr, number'ın adresini saklar
int value = *ptr; // value artık 42 içeriyor*ptr ifadesine yeni bir değer atadığınızda, aslında o bellek konumunda saklanan değeri değiştirmiş olursunuz:*ptr = 100; // number'ı 100'e değiştirir
// number artık 100, onu ptr aracılığıyla değiştirmiş olmamıza rağmenGörev
KolayBir pointer aracılığıyla bir değişkenin değerini değiştirerek dereference operatörünü gösteren bir program oluşturun.
Aşağıdaki input sağlanacaktır:
- Bir
variableiçin ilk değeri temsil eden bir tamsayı pointeraracılığıyla atanacak yeni değeri temsil eden bir tamsayı
Programınız şunları yapmalıdır:
temperatureadında bir tamsayıvariabletanımlayın ve bunu ilkinputdeğeriyleinitializeedintemperaturedeğişkenini gösteren (pointing)tempPtradında birpointeroluşturun (Create)pointer'ıdereferenceederekOriginaldeğeri yazdırın (Print)temperaturedeğerini,pointerüzerinden ikinciinputdeğerine değiştirmek (Change) içindereferenceoperatörünü kullanınpointer'ı tekrardereferenceederek yeni değeri yazdırın (Print)
Aşağıdaki tam çıktı biçimini kullanın:
Original value: [original value]
New value: [new value]Kendin dene
#include <iostream>
using namespace std;
int main() {
// Girdi değerlerini oku
int initialValue, newValue;
cin >> initialValue;
cin >> newValue;
// TODO: Kodunuzu aşağıya yazın
// 1. temperature değişkenini bildir ve initialValue ile başlat
// 2. temperature'a işaret eden tempPtr işaretçisini oluştur
// 3. Print original value using pointer dereference
// 4. newValue kullanarak işaretçi aracılığıyla temperature değerini değiştir
// 5. İşaretçi dereferansı kullanarak yeni değeri yazdır
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık & Akış bölümündeki tüm dersler
1İşaretçiler ve Bellek
İşaretçi Nedir?Adres OperatörüDereference OperatörüNull İşaretçilerİşaretçiler ve Diziler'new' ile Dinamik Bellek'delete' ile Belleği Serbest BırakmaÖzet - İşaretçi Pratiği2Vektörler (Dinamik Diziler)
std::vector'a GirişBir Vektör OluşturmaEleman EklemeElemanlara ErişmeVektör BoyutuFor Döngüsü ile YinelemeAralık Tabanlı For DöngüsüEleman SilmeÖzet - Vektör İşlemleri3Proje: Görev Listesi Aracı
Projeye Genel BakışGörev EklemeKendi başına pratik yap: Online C++ derleyicisi