2014-02-13 3 views
1

EDIT: Я вижу, как это работает сейчас, в строке myString требуется все после пробела. Итак, как это сделать, если вы хотите взять имя, а не фамилию, так как теперь вы не можете использовать это пространство, если вы это сделаете.Как распечатать определенную часть строки

Я хочу, чтобы пользователь вводил свое имя и фамилию, тогда я бы хотел напечатать их фамилию только на экране.

Я знаю, как задать вопрос пользователю, и я использовал getline, чтобы получить строку с их именем. Но как только это произошло, как я могу взять свою фамилию и распечатать ее, даже не распечатывая свое имя. Кажется, я не могу изолировать каждую часть строки.

Я попытался найти ответ на этот вопрос, но я не могу найти его.

using namespace std; 
int main() 
{ 
    string firstName; 
    string lastName; 

    cout << "Welcome to my store!" << endl; 
    cout << "---------------------------" << endl; 
    cout << "Please enter your first and last name. "; 
    getline(cin, firstName); 
    cout << "\nThank you " << firstName << " for shopping with us!"; 
} 

Я оставил GetLine как, потому что я попытался GetLine (CIN, ПгвЬЫат, LastName) в попытке назначить каждый вход слова со стороны пользователя в строку, но это не сработало.

+0

Покажите, что вы попробовали, тогда мы могли бы помочь лучше – Itachi

ответ

0

Я думаю, что это то, что вы ищете (для печати в одиночку фамилии)

#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
string myString; 
int i; 
cout<<"\n Enter a name:"; 
getline(cin, myString, '\n');//Get a name where first name and last name is seperated by a space 
i=myString.find(' ');//find the find occurance of space in that string 
cout<<"thanks for shopping:"; 
cout<<myString.substr(i,myString.length());//printing the rest of the string from the occurence of space 
return 0; 
} 

Когда вы даете вход как «Sachin Tendulkar» Это говорит «спасибо за покупки: Тендулкар»

+0

Эй, спасибо, что это сработало, но не возражаете ли вы объяснить, как вы это достигли? – Christoph

+0

@Christoph lookup std :: string :: find() std :: string :: substr() –

Смежные вопросы