2014-10-21 5 views
0

건배! 저는이 코딩 커뮤니티에 완전히 익숙하지 않습니다 -하지만 지금까지 그것을 즐기고 있습니다. 문자열이 있고 여러 줄이 여러 줄인 경우이 줄을 어떻게 나누어야합니까? 나는이를 법원긴 문자열 깨기

string famousVillains; 
famousVillains = 
" 
Voldemort: skinny man with a fat backstory 
Ursula: fat lady with tentacles 
The Joker: scary dude with make-up 
Cruella: weird lady with dog obsession 
Terminator: crazy guy in black."; 

, 어떻게 내가 악당의 각 사이에 공백이 있는지 확인 않습니다 : 예를 들어

? 나는 사용을 시도했다 < < endl; 그러나 이것은 단지 따르는 악당들을 모두 취소합니다.

도움 주셔서 감사합니다.

+0

올바른 형식을 사용하고 시도한 코드를 표시하고 핸드 세이브가 아닌 * 정확한 * 출력을 시도하십시오. 훨씬 쉬울 것입니다. – luk32

+0

"공백"이라고 할 때, 줄 바꿈을 의미합니까? – ooga

+3

가능한 중복 [C++ multiline string literal] (http://stackoverflow.com/questions/1135841/c-multiline-string-literal). 하지만 아마도 당신이 원하는 것은 데이터를 구조화하는 것입니다. 그래서'class Character {private : string name; 문자열 설명; public :/* methods here//};'그런 다음, 벡터 famousVillains;를 사용하십시오. 문자 처리, 추가 및 제거, 다양한 표시 방법 등 다양한 옵션을 제공합니다. 모든 데이터를 단일 덩어리 문자열로 저장하는 것은 처리하는 것이 훨씬 어렵습니다. – HostileFork

답변

1

std::map을 만들거나 악당 및 설명에 대한 표를 조회 할 수 있습니다.

struct Villain_Descriptions 
{ 
    std::string name; 
    std::string descripton; 
}; 

Villain_Descriptions famous_villains[] = 
{ 
    {"Voldemort", "skinny man with a fat backstory"}, 
    {"Ursula", "fat lady with tentacles"}, 
    {"The Joker", "scary dude with make-up"}, 
    {"Cruella", "weird lady with dog obsession"}, 
    {"Terminator", "crazy guy in black."}, 
}; 

룩업 테이블과 std::map 구조는 당신이 자신의 이름을 검색하여 악당의 정보를 얻을 수 있습니다.
메서드에서 문자열에 개행 또는 이름을 검색 한 다음 하위 문자열을 추출해야합니다.