【发布时间】:2020-03-23 21:11:09
【问题描述】:
我正在尝试在通过 UART 接收的另一个字符串中查找特定字符串。但是,我的函数返回 0,尽管字符串不在 uart 接收的字符串中。这是我的功能:
bool GetCommand(UART_HandleTypeDef *huart, char *command, char *getCommand, uint8_t size) {
char *ptr;
if (HAL_UART_Receive_IT(huart,command,size) == HAL_OK) {
ptr = strstr(command,getCommand);
}
if (ptr) {
return 1;
} else {
return 0;
}
}
程序可以与 gcc 一起使用,但是当我使用 Keil 尝试它时,它并没有像我预期的那样工作。你能帮忙解决这个问题吗?
【问题讨论】:
-
在使用 strstr 之前确保你的字符串是
nul终止