ostringstream问题

时间:2012-02-17 02:45:37

标签: c++ printf stringstream

当我使用ostringstream时,我得到的唯一值是:COM1 我有一个发送数据的应用程序。 我使用的代码为:

std::ostringstream values;
values << someStruct.someValues;
...
...
std::string data
data << values.str();

但是当我运行它时,我得到的只是COM1的输出。我的应用程序是一个DLL文件。

但是当我在下面执行此方法时,我会得到正确的值

char *data;
char values[20];
sprintf(values, "%d",someStruct.someValue);
strcat(data,values);

但是我不想使用上面的方法,因为我需要从程序中获取许多变量。所以有人请帮忙。

1 个答案:

答案 0 :(得分:1)

std::string data;
data << values.str();

std::string不是。它不能用operator<<。我很惊讶这个代码甚至编译,但它几乎肯定没有做一些有用的东西。你想要的是这个:

std::string data = values.str();