C++ Diziler Ve Sözcükler
Diziler ve Sözcükler (strings)
C++ da sözcükler için farkli bir tip yoktur. Sözcükler ile
ilgili islemler diziler yardimi ile kolaylikla yapilabilir. Dikkat
edilmesi gereken bir kural vardir. Sözcüklerin (strings) son
elemanlari "\0" degerini alir (null terminator). Burdan da
anlayacagimiz gibi son karakter bos dizgiyi belirtiyorsa stringtir.
Suna da dikkat edilmelidir ki string sabitlerinin sonuna "\0"
koymamiza gerek yoktur. Derleyici bunu otomatik olarak yapacaktir.
Char sozcuk[7]="Deneme";
Char sozcuk[7]=''D'', ''e'', ''n'', ''e'', ''m'', ''e'', ''\0''};
Bu dizilerin içerikleri tamamen aynidir. Hazir söz gelmisken suna da
deginelim. ''\n'', ''\t'', ''\0'' v.s, bunlar birer karakter olarak
okunur. Ben önceleri iki diye okurdum:)
#include <stdlib.h>
#include <iostream>
#include <string>
using namespace std;
int main()
{
string Cevap = "";
cout << "Hazirmisin?";
cin >> Cevap;
if( ( Cevap == "evet" ) || ( Cevap == "Evet" ))
{
cout << "Ee Tamam... ne gec ti eline?:) " << endl;
}
else
{
cout << "Zorlamaya devam et!" << endl;
}
cout << "Hazirmisin? " << endl;
cin >> Cevap;
if( ( Cevap[0] == ''e'' ) || ( Cevap[0] == ''E'' ) )
{
cout << "Ee Tamam... ne geçti eline?:)" <<endl;
}
else
{
cout << "Zorlamaya devam et!" << endl;
}
system("pause");
return 0;
}
Bu, sanirim bu konudaki en zor örnegimiz. Simdi örnek üzerinde biraz
konuyu konusmaya devam edelim. Zaten diger if, else bloklarindan ve
cout, cin gibi komutlardan bahsetmeyecegim. string Cevap = ""; bir
sabitimizle isleme basladik. if( ( Cevap[0] == ''e'' ) || ( Cevap[0]
== ''E'' ) ) burasi sanirim tanidik geldi:) Evet simdi burda
Cevap[1] i çagirmis olsaydik ''v'' veya ''V'' degerlerini alicaktik.
Tabi burada index degerinin yani dizideki ilk degerin 0 ile
basladigini bir daha gördük. Simdi bu örnekle alakali olarak da
Diziler ve Fonksiyonlar konusuna geçelim....
|