0

为什么下面的第 4 行打印的是内存地址而不是第 2 行打印的原始字符串,我该如何更正?非常感谢。

std::stringstream os (std::stringstream::in | std::stringstream::out);
std::cout << result->studentId;
os << result->studentId;
std::cout << &os << std::endl;
4

2 回答 2

3

使用该str()函数获取底层字符串:

std::cout << os.str() << std::endl;

为了将来参考,这里有一个关于的参考std::stringstream,其中包含每个成员函数。

于 2012-09-24T01:39:29.933 回答
0

删除&运算符

std::cout << os.str() << std::endl;
于 2012-09-24T02:05:53.513 回答