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;
}
这可能是一个非常微不足道的问题,但我一直在寻找如何绕过它,但运气不佳。我有一个使用 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;
}