0

我有来自我发送格式的 3 个传感器的串行端口的数据

sensor0,sensor1,sensor2

我使用这个程序:

 #include <iostream>
 #include <string>
 #include <sstream>
 #include <Windows.h>
 #include "SerialClass.h"

 char buffer[25];
 using namespace std;

 int i;
 int main()
   {
  Serial oSerial("COM8:");

  oSerial.WriteData("1",1);
       Sleep(100);
       oSerial.ReadData(buffer,25);
string str = buffer;
string word;
stringstream stream(str);

while( getline(stream, word, ',') ) 
    cout <<word << "\n";



Sleep (10000);
   }

结果是:

 sensor0
 sensor1
 sensor2

我希望数据的结果在缓冲区/变量中,所以结果看起来像

y1=sensor0
y2=sensor1
y3=sensor2

我怎样才能改变代码,所以结果就是这样。

4

1 回答 1

0

在代码片段中:

int count = 1;
while( getline(stream, word, ',') ) 
{
   cout<<"y"<<count<<"="<<word<< "\n";
   count++;
}
于 2013-03-21T06:26:19.530 回答