2014-01-18 2 views
0

사용자가 다른 줄에 입력 한 내용을 기반으로 특정 요소를 가져 오려고합니다. 나는 C++ 프로그래밍에 익숙하지 않으므로 어떤 경로를 사용해야하는지 확신 할 수 없다. "존"- 사용자가 마가, 요한, 수잔에 '3'형제 자매를 입력하고 입력 그렇다면여러 입력에서 특정 요소를 가져 오는 방법 C++

std::string siblings; 
std::string names; 

std::cout << "Please enter how many siblings you have: "; 
std::cin >> siblings; 

for (int x=0;x<siblings;x++){ 
    std::cout << "Please enter your sibling(s) name: "; 
    std::cin >> names; 
} 

은, 내가 어떻게 2 형제의 이름을받을 수 있나요? 아니면 첫 번째 이름을 입력했거나 마지막으로 입력 했습니까?

** 나는 또한 한 번만 물어보고 사용자가 다른 줄에 넣은 내용에 따라 X 형제를 넣을 때까지 기다렸다가 프로그램을 계속 진행하기를 원했지만 질문은 반복적으로 묻습니다. 모든

+1

어떻게'names'가 선언 되었습니까? – DavidO

+0

'Array'에 대해 알고 있습니까? –

+0

@VedantTerkar, 그렇지 않습니다. 'Array'는 무엇입니까? – Shoe

답변

1

먼저 그렇지 않으면 for 루프에서 operator<의 사용이 작동하지 않습니다, int보다는 std::stringsiblings을 정의해야합니다. 둘째, std::vector을 사용하고 for 루프 안의 이름을 사용해야합니다. 위의 코드는 이름을 형제 각 요청하고 names에 밀어 것입니다 다음 형제 자매의 수를 물어 것

int siblings = 0; 
std::vector<std::string> names; 

std::cout << "Please enter how many siblings you have: "; 
std::cin >> siblings; 

for (int x = 0; x < siblings; x++) { 
    std::string current; 
    std::cout << "Please enter the name for sibling #" << (x + 1) << ':'; 
    std::cin >> current; 
    names.emplace_back(current); 
} 

: 여기에 전체 작업 코드입니다.

C 및 C++, take a look at this other question으로 문자열 형식의 마법 세계로 들어가기를 정말로 원한다면.

+0

목록과 벡터의 차이점은 무엇입니까? 왜 목록을 사용할 수 없습니까? – Kara

+0

@Lalala, 제발, [읽으세요.] (http://stackoverflow.com/questions/2209224/vector-vs-list-in-stl). – Shoe

관련 문제