나는 cout을 함께 할 방법을 알고 :C++에서 문자열에 여러 항목을 추가하는 방법은 무엇입니까?
cout << "string" << 'c' << 33;
하지만 어떻게 표준 대신 직접 출력한다 변수로 리디렉션이를 수행하기 위해?
const char* string << "string" << 'c' << 33; //doesn't work
나는 cout을 함께 할 방법을 알고 :C++에서 문자열에 여러 항목을 추가하는 방법은 무엇입니까?
cout << "string" << 'c' << 33;
하지만 어떻게 표준 대신 직접 출력한다 변수로 리디렉션이를 수행하기 위해?
const char* string << "string" << 'c' << 33; //doesn't work
C++ 표준 라이브러리의 std::stringstream
을 사용하십시오.
은 다음과 같이 작동합니다
std::stringstream ss;
ss << "string" << 'c' << 33;
std::string str = ss.str();
const char* str_ansi_c = str.c_str();
마음
str
에 여전히 C 스타일
str_ansi_c
를 사용하는 동안 범위에 있어야하십시오.
stringstream은 STL의 일부가 아닙니다. – Pubby
@Pubby : 아니, C++ 표준 라이브러리의 일부입니다. 보병 부지. 그러나 컴퓨터는 교육적이지 않으면 아무것도 아닙니다. – Omnifarious
Thx. 이 문제를 해결했습니다. :) – Krizz
#include <sstream>
#include <iostream>
main()
{
std::stringstream ss;
ss << "string" << 'c' << 33;
std::string str = ss.str();
std::cout << str;
}
'char *'또는'std :: string' ?? – Pubby