感觉自己的指针没有学好啊
逻辑性也不强所以做简单的伪代码笔记记录一下stc32的学习历程
字符串比较
//字符比较
//str1 是母字符串 str2是子字符串 Str2在 Str1里面遍历
//如果遍历到了返回就是地址 就不为空,没有就返回NULL
char* strstr( char* str1, char* str2)
{
char* s1 = str1;
char* s2 = str2;
char* p = str1;
while (*p!='\0')
{
s1 =p ;
s2 = str2;
while (*s1 != '\0' && *s2 != '\0' && *s1 == *s2)
{
s1++;
s2++;
}
if (*s2 == '\0')
{
return (char*)p;
}
p++;
}
return NULL;
}
//串口数据发送
void UART1_TxByte(u8 dat)
{
SBUF = dat;
B_TX1_Busy = 1;
while(B_TX1_Busy);
}
void main(){
// +QMTRECV: 0,0,"Selfmsg","MQTT_OL"
if(strstr(RX1_Buffer,"RE")!=NULL)
{
UART1_TxByte(*(strstr(RX1_Buffer,"RE")+1));
}
//串口输出应该是 E
}
希望记录在这里后我每次都能回味