Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi

Sorunuz mu var? Belki de çoktan soruldu..

0
c++da getline ve char kulanımı

Açık 2 Cevaplar 228 Gösterim C/C++
Bir kelimenin ilk ve son harfinin aynı olup olmadığını bulan program.

bu soru üzerinden getline ve char kullanımını açıklayabilir misiniz ? teşekkür ederim.

2 Cevap

0
Selam,

Bu soruda acikcasi ne sorduğunu anlayamadim. Programi direk yazmamizi mi istiyorsun? Bence anlamadigin kisim tam olarak neresi onu soylersen daha iyi olur. Getline mi anlamadin, yoksa char nedir onu mu anlamadin?

Iyi calismalar.
27 Aralık 2015 kenan (2,833 puan) cevapladı
1Yorumlar
27 Aralık 2015 Kerim (159 puan) yorumladı
ikisininde kullanımını anlayamadım
0

char = bir veri tipi olup bir karakterlik veriyi tutmak için kullanılır. Yani 8 bitlik(programlama diline göre değişebilir.) ve genel olarak klavyeden bilgi alınacağı zaman kullanılabilecek bir tipdir. Mesela "bu bilgi klavyeden girilmiştir" şeklinte bir metnimiz olsun. Bu metin içindeki herbir karakter bir byte'a denk gelir. b,u, (boşluk), b, i ... gidiyor.

get_line = enter tuşunu veya \n karakterini (aynı şey) görene kadar belirtilen kaynakdan metin bilgisi okumak için kullanılır. Klavye olabilir, dosya olabili, veya network kaynakları olabilir.

Neden char diziye ihtiyacın var?

Çünkü "bu bilgi klavyeden girilmiştir" metninde karakter sayısını topla 2+1+5+9+1+11 = 28 karakter ve metnin bitişini belirleyen gözle görünmeyen bir karakter daha var onunla beraber 29 karakter. Tek tek tutmak gerekirse char k1,k2,k3.. diye 29 tane tanımlamak gerekir mantıklı değil. Onun yerine

char metin[50]; diye bir tanımlama yapartan 50 karakterden oluşan bir metni bu diziye atayabilirsin. Bu tür bi dizinin diğer adı string oluyor(ilerleyen konular).

Sözümüze dönelim. klavyeden veya dosyadan bilgi okumak için get_line komutu kullanılabilir ve okuduğun bilgi bir char dizisine atılabilir.

Örnek kod

#include <stdio.h>

int main()
{
  char char_dizi[50];
  int okunan_karakterler;
  puts ("Luften klavyeden giriş yapınız.");

  okunan_karakterler = getline (char_dizi, 50, stdin);

  if (okunan_karakterler == -1)
    {
      puts ("hata!!");
    }
  else
    {
      puts ("Girdiğiniz bilgi:");
      puts (char_dizi);
    }

  return 0;
}
27 Aralık 2015 kenan (2,833 puan) cevapladı
27 Aralık 2015 kenan düzenledi
1Yorumlar
27 Aralık 2015 Kerim (159 puan) yorumladı
tamamdır teşekkür ederim :)
...