当我使用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);
但是我不想使用上面的方法,因为我需要从程序中获取许多变量。所以有人请帮忙。
答案 0 :(得分:1)
std::string data;
data << values.str();
std::string
不是流。它不能用operator<<
。我很惊讶这个代码甚至编译,但它几乎肯定没有做一些有用的东西。你想要的是这个:
std::string data = values.str();