我从arduino向另一个arduino发送字符串(通过I2C),并将其捕获并保存到char[10]中。当我将此变量与文本进行比较时,条件没有执行:-/而我不知道为什么...
char dataRx[10] = "";
void DaemonReceiving(int howMany){
int index = 0;
while(Wire.available() > 0){
char c = Wire.read();
dataRx[index++] = c;
dataRx[index] = '\0';
}
Serial.println(dataRx);
if(dataRx == "HELLO"){
Wire.beginTransmission(1);
Wire.write("HI");
Wire.endTransmission();
}
}
strcmp()
函数。 - Roddy"HELLO"
将成为一个字符指针(char const *
)。dataRx
是指向其他位置的指针,因此相等性表达式永远不会为真,因为它所问的问题是“这两个指针指向同一位置吗?”。 - cdhowie