nullptr
- C++ kursu
- Başlangıç
- Ders 80/116
- 5 dk
nullptr ile modern null işaretçi kavramını öğrenirsin.
nullptr
nullptr, 'hiçbir yere işaret etmeyen' işaretçi değeridir. Eski C++'ta NULL veya 0 kullanılırdı; ama modern C++'ta nullptr tercih edilir çünkü tür güvenlidir.
Bir işaretçiyi int* p = nullptr; ile başlatırsan, p'nin henüz bir hedefi olmadığını açıkça belirtirsin. Daha sonra if (p == nullptr) ile boş olup olmadığını denetleyebilirsin. Bu, dereference yapmadan önceki güvenlik kontrolüdür.
Boş denetimi
Bir işaretçiyi *p ile dereference etmeden önce boş olup olmadığını denetlemek iyi bir alışkanlıktır. Boş işaretçiyi dereference etmek tanımsız davranıştır; program çökebilir.
Denetim: if (p != nullptr) { std::cout << *p; }. Bu yazım, p boş değilse değeri yazdırır. Boş işaretçiler, 'henüz bir hedef yok' durumunu ifade etmenin açık yoludur; bu yüzden modern C++ kodunda sıkça karşılaşırsın.
Uygulama Boş işaretçi denetimi
int* p = nullptr; tanımla. if (p == nullptr) ile denetle; koşul doğruysa std::cout ile "Boş" yazdır (yeni satırla).
Başlangıç kodu
#include <iostream>
int main() {
// p işaretçisini nullptr yap
// Boş mu diye denetle
// Boş yazdır
return 0;
}Örnek çözüm
#include <iostream>
int main() {
int* p = nullptr;
if (p == nullptr) {
std::cout << "Boş\n";
}
return 0;
}Beklenen çıktı
Boş
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 nullptr ataması
int* p = ____;
int* p = nullptr;
Açıklama: int* p = nullptr; p'yi boş işaretçi yapar.
2 nullptr nedir?
- Hiçbir yere işaret etmeyen değer Doğru cevap
- Boş bir değişken
- Bir işaretçi türü
- Bir referans
Açıklama: nullptr, hiçbir yere işaret etmeyen işaretçi değeridir.
3 İfadeyi anlamına eşle
| Kavram | Anlamı |
|---|---|
nullptr |
Boş işaretçi |
if (p == nullptr) |
Denetim |
int* |
İşaretçi türü |
p == nullptr |
Karşılaştırma |