C ++将连续的字符存储到数组中

C++ store consecutive chars into an array

这可能是一个非常微不足道的问题,但我一直在寻找如何绕过它,但运气不佳。我有一个使用 libserial 函数从串行端口读取的函数,我得到的响应总是以回车符 return 或“\r”结尾,所以为了读取它,我在考虑读取字符通过字符比较它是否不是 \r 然后将每个字符存储到一个数组中供以后使用。我的函数如下:

void serial_read()
{
char character;
int numCharacter = 0;
char data[256];

     while(character != '\r')
     { 
         serial_port >> character; 
         numCharacter++;
         character >> data[numCharacter];
     }
cout << data; 
}

综上所述,我的问题可能应该是如何将连续的字符存储到数组中。非常感谢您的宝贵见解。

我猜你是故意的

void serial_read()
{
  char character = 0;
  int numCharacter = 0;
  char data[256];

  while(character != '\r' && numCharacter < 255)
  { 
     serial_port >> character; 
     data [numCharacter ++] = character;
  }
  data [numCharacter] = 0;  // close "string" 
  cout << data; 
}