将整数表示为字节 我现在正在做一个作业,第一次使用C++。 我试图将某些“消息类型”附加到字符串的开头,这样当发送到服务器/客户端时,它将根据消息类型处理字符串。我想知道我是否能够将任何两位整数放入消息缓冲区的元素中。。。。见下文
我在下面留下了一段代码:将整数表示为字节 我现在正在做一个作业,第一次使用C++。 我试图将某些“消息类型”附加到字符串的开头,这样当发送到服务器/客户端时,它将根据消息类型处理字符串。我想知道我是否能够将任何两位整数放入消息缓冲区的元素中。。。。见下文,c++,C++,我在下面留下了一段代码: char messageBuffer[32]; messageBuffer[0] = '10'; << I get an overflow here messageBuffer[1] = '0'; for (int i = 2; i < (userName.size() + 2); i++) { messageBuffer[i] = userName[(i - 2)]; } charmessagebuf
char messageBuffer[32];
messageBuffer[0] = '10'; << I get an overflow here
messageBuffer[1] = '0';
for (int i = 2; i < (userName.size() + 2); i++)
{
messageBuffer[i] = userName[(i - 2)];
}
charmessagebuffer[32];
messageBuffer[0]=“10” 消息缓冲区是一个字符数组。索引0包含一个字符,因此不能将两个字符放入一个字符中。这将违反一位包含一个二进制数字的规则:-)
正确的解决方案是这样做:
messageBuffer[0]=“0”
messageBuffer[1]=“1”
或:
messageBuffer[1]=“0”
messageBuffer[0]=“1”
或
messageBuffer[0]=10
“10”不是有效值,因此溢出
要么在messageBuffer[0]=10中写入10-如果10是您想要输入的值,要么按照Lars的写入方式写入。Ahhh sweet thanking=D这非常有用,对此我非常强调。“这违反了一位包含一个二进制数字的规则”Danng。。。这就是为什么我不能让我的量子处理器工作的原因:-)