🚀 Puts() Fonksiyonu Kullanımı: C/C++’ta Dizeleri Kolayca Yazdırma
Bu Rehberde Ne Öğreneceksiniz?
Bu rehberde, C ve C++ dillerinde dizeleri standart çıktıya (stdout) yazdırmanın en basit ve hızlı yolunu sunan puts() fonksiyonunu öğreneceksiniz.
Ayrıca printf() veya cout’a kıyasla neden daha pratik olduğunu, otomatik yeni satır ekleme özelliğini ve fputs() ile farklarını keşfedeceksiniz.
🧠 Puts() Fonksiyonu Nedir?
puts() fonksiyonu, bir dizeyi (string) standart çıktı akışına yazar ve her çağrıda metnin sonuna otomatik olarak bir yeni satır (\n) ekler.
Bu özelliğiyle printf() ve cout fonksiyonlarından ayrılır — her defasında \n yazmaya gerek kalmaz.
Fonksiyon Deklarasyonu:
int puts(const char* str);
📘 str, ekrana yazdırılacak sabit dizeyi temsil eder. Başarılı olursa negatif olmayan bir tamsayı döndürür; hata durumunda EOF döner.
💻 C ve C++’ta Basit Kullanım
Aşağıdaki örnek, C dilinde puts() ile bir metin yazdırmanın temel halidir:
#include<stdio.h>
int main() {
char mesaj[] = "Rabisu Bulut platformuna hos geldiniz.";
puts(mesaj); // Dizeyi stdout’a yazar
return 0;
}
Çıktı:
Rabisu Bulut platformuna hos geldiniz.
🧩 Aynı kod C++’ta da çalışır:
#include<iostream>
using namespace std;
int main() {
char mesaj[] = "Rabisu Bulut platformuna hos geldiniz.";
puts(mesaj);
return 0;
}
🔁 Otomatik Yeni Satır Özelliği
puts() fonksiyonu, her çağrıldığında metnin sonuna otomatik olarak \n ekler. Bu nedenle printf("\n"); gibi ekstra bir satır komutuna gerek yoktur.
#include<stdio.h>
int main() {
char sunucuAdi[15] = "tr1-node01";
char regionKodu[15] = "eu-west-1";
puts(sunucuAdi);
puts(regionKodu); // "\n" eklemeye gerek yok
return 0;
}
Çıktı:
tr1-node01
eu-west-1
🔢 puts() Fonksiyonunun Dönüş Değeri
puts() başarılı olursa negatif olmayan bir değer döndürür, hata durumunda ise EOF (End Of File) değeri verir.
#include<stdio.h>
int main() {
char durumMesaji[] = "Islem basarili.";
int sonuc = puts(durumMesaji);
printf("Dönen Deger = %d", sonuc);
return 0;
}
Çıktı:
Islem basarili.
Dönen Deger = 0
⚖️ puts() ve fputs() Karşılaştırması
| Özellik | puts() | fputs() |
|---|---|---|
| Yazdırma Hedefi | stdout (ekran) | Herhangi bir akış veya dosya |
| Satır Sonu | Otomatik \n ekler | Otomatik eklemez |
| Kullanım Alanı | Konsol çıktısı | Dosya veya özel akış yazımı |
🧠 Kısaca: Konsola hızlı dize yazdırmak istiyorsanız puts(), dosyaya yazmak istiyorsanız fputs() tercih edilmelidir.
❓ Sıkça Sorulan Sorular (SSS)
1. Puts() neden printf() yerine tercih edilir?
Çünkü puts() yalnızca dize yazdırmak için optimize edilmiştir. Daha hızlıdır ve otomatik olarak yeni satır ekler.
2. Puts() ile sayılar yazdırabilir miyim?
Hayır. puts() yalnızca const char* tipinde dizeleri yazdırabilir. Sayılar için printf() kullanılır.
3. stdio.h neden gereklidir?
puts() ve printf() gibi giriş/çıkış işlemleri için standart stdio.h kütüphanesi zorunludur.
4. Puts() hata verirse ne döner?
Hata durumunda EOF döner, bu da başarısız işlem anlamına gelir.
5. fputs() ne zaman kullanılır?
Belirli bir dosyaya veya özel çıktı akışına veri yazmak gerektiğinde fputs() tercih edilir.
🏁 Sonuç
puts() fonksiyonu, C/C++ programlarında dizeleri yazdırmak için sade, hızlı ve güvenilir bir çözümdür. Otomatik satır ekleme özelliğiyle hem kodu sadeleştirir hem de hataları azaltır.
💡 Rabisu Bulut üzerinde çalışan sanal sunucularınızda log çıktılarınızı daha temiz görmek için puts() fonksiyonunu hemen deneyin!