2014-12-09 7 views
0

setw을자를 수있는 방법이 있습니까?사이 트로 줄이기

내가 출력을 얻을 것인지 말 :

ㅋ ㅋ ㅋ ㅋ blee 르
BU ㅋ ㅋ ㅋ ㅋ blee

이 작업 할 수있는 방법이 있나요 :

string foo{"bu blah blah blee le"}; 

cout << setw(foo.size() - 3) << foo.data() + 3 << setw(foo.size() - 3) << foo << endl; 

답변

1

아니, 정말로.

당신은하지만,이 예를 들어 서식 출력으로 전환 할 수 있습니다

assert(foo.size() > 3); 
cout.write(&foo[3], foo.size() - 3); 
cout.write(&foo[0], foo.size() - 3); 
1

하지 직접.

printf 형식 지정자에서 precision 인수는 문자열에서 최대 문자 수를 지정하는 데 사용될 수 있습니다. C++에서 그러나, 당신은 문자열 연산자 사용 (. 물론, 처음을 위해, 당신은 또한 foo.c_str() + 3을 사용할 수 있습니다)

std::cout << foo.substr(3) << foo.substr(0, foo.size() - 3) << std::endl;