2012-05-27 20 views
7

Kullanıcının girebileceği karakter sayısını cin kullanarak sınırlamak istiyorum. Örneğin iki karakterle sınırlamak isteyebilirim. Bunu nasıl yapabilirim?Sinema ile girilen karakter sayısını nasıl sınırlarım?

Benim kod şöyle görünür:

cin >> var; 
+1

Michael, aksine ('>> Meni' operatörü kullandığını gösteren kod parçacığını çıkarmak niye üzere 'readline', 'Oku', vs)? –

+0

@Ben, 'cin' kullandığını zaten belirttiğinden, bunun alakalı olduğuna inanmadım. Yararlı olduğunu düşünüyorsanız, tekrar ekleyeceğim. –

cevap

15

Sen setw()

cin >> setw(2) >> var; 

http://www.cplusplus.com/reference/iostream/manipulators/setw/

karakter sayısı sonraki yerleştirme işlemi için alan genişliği olarak kullanılmak üzere ayarlar kullanabilirsiniz. @chris tarafından sağlanan

Çalışma örneği: http://ideone.com/R35NN

+0

"insertion"! = "Extraction". –

+0

@ Robᵩ, bu giriş işlemleri ile çalışır. Deitel kitabının bir telefon numarası girmek için operatör aşırı yükleme bölümünde kullandığını hatırlıyorum. – chris

+0

@ Robᵩ: Bunu da test ettim. –

1

hmm 'var' karakter dizisi yapmak ve dizi belki doluydu kadar girdi okumak için while döngüsü kullanabilirsiniz?

char var[somenumber + 1]; 
int count = 0; 

while(count < somenumber){ 
    cin >> var[count]; 
    count++; 
} 

var [somenumber] = '\0'; 
İlgili konular