=====getline=====
Sözdizimi:
istream& istream::getline( char* tampon, streamsize num );
istream& istream::getline( char* tampon, streamsize num, char ayrac );
get() fonksiyonu giriş akımlarıyla kullanılır. char ayrac parametresi olmayan biçimi, ayraç olarak yeni satır karakterini kullanır. getline() aşağıdaki durumlardan biri gerçekleşene kadar tampon belleğe karakterleri okur:
* num - 1 karakter okunmuş olması
* EOF ile karşılaşılmış olması,
* veya, ayrac karakteri okunmuş olması. Ayraç karakteri tampona yerleştirilmez.
Ayraç karakteri (normalde yeni satır) okunmadığında, giriş akımı [[io/fail|hata durumu]]na ayarlanır.
Örneğin, aşağıdaki kod getline fonksiyonunu kullanarak bir metin dosyasının ilk 99 karakterini (bir karakter sonlandırma karakteri olarak ayrılmıştır) veya tek tek her bir satırını --hangisi daha önce gerçekleşirse-- ekrana gösterir. (EOF gelene veya 99 karakterden uzun bir satırla karşılaşılana kadar):
ifstream fin("tmp.dat");
int MAX_LENGTH = 100;
char satir[MAX_LENGTH];
while( fin.getline(satir, MAX_LENGTH) ) {
cout << "okunan satir: " << satir << endl;
}
Eğer dosyadan satırları karakter dizileri yerine string nesnelerine doğrudan okumak istiyorsanız, [[string/getline|string getline]] fonksiyonunu kullanabilirsiniz.
Microsoft derleyicisi kullananlar getline'ın bir karakter fazladan okuması sorunuyla karşılaşabilirler. Bu sorunla ilgili olarak [[http://support.microsoft.com/kb/240015|Microsoft getline bug]] adresindeki belgeye başvurabilirler.
İlgili Başlıklar: [[gcount]], [[get]], [[string/getline|string getline]], [[ignore]], [[read]]