2014-03-04 4 views
1

기본적으로 내가하려는 것은 주어진 문자열의 단어 사이에 공백을 균등하게 분배하는 것입니다. 이 내가 무슨 짓을 예상대로 그러나단어 사이에 공백을 똑같이 배분 C++

istringstream s("En el infinito y mas alla"); 
string token; 
while(s >> token) 
{ 
    cout << token << setw(10); 
} 

이 작동하지 않습니다. 왜 그런지 알아?

+1

"공평하게 배포"란 정확히 무엇을 의미합니까? 각 단어 사이에 정확히 10 개의 공백을 넣으시겠습니까? 아니면 당신이 정당화 정렬과 같은 일을하려고합니까? "워드 프로세서에서 – Borgleader

+2

setw는 출력 필드의 너비를 * 출력합니다. 따라서 단어 사이에 10 칸을 삽입하지 않습니다. – melak47

+0

michaeltang이 말한 것은 무엇입니까? 찾고 있었는데, 이제 당신은 정당화 된 정렬에 대해 언급 ... 어떻게 그럴 수 있습니까? – user3377176

답변

2

이게 원하는 것일 수 있습니다.

cout<< setw(10+token.size()) << token ; 
+0

예, 이것은 내가 원했던 것입니다! 고마워요! – user3377176

관련 문제