简介
strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回 str1字符串从 str2第一次出现的位置开始到 str1结尾的字符串;否则,返回NULL。
实验
#include "stdio.h"
#include "string.h"
char *a1 = "AT+RESET";
char *a2 = "AT";
int main()
{
printf(strstr(a1,a2));
}
实验结果
可以看到实验返回了a1整个字符串,确切的说是返回了a2在a1首次出现的位置一直到最后。

若把a2修改成不是a1的子串,则返回为空,如下图

项目实战引用
if( strstr((char *)DEBUG_USART_ReceiveData.uart_buff,"AT") == (char *)DEBUG_USART_ReceiveData.uart_buff )
该代码可以用于判断接收到的数据是否是AT开头的指令





![[计算机网络]---序列化和反序列化](https://img-blog.csdnimg.cn/direct/fd55247bf7494a819f098bbc3cfa6708.png)






![[java基础揉碎]数组 值拷贝和引用拷贝的赋值方式](https://img-blog.csdnimg.cn/direct/2366dd5fbbf045039b0609f60fb32011.png)
![【蓝桥杯冲冲冲】[CEOI2015 Day2] 世界冰球锦标赛](https://img-blog.csdnimg.cn/direct/eb56df1dfcbe45408a5d9b024cd53b02.jpeg#pic_center)
![[高并发] - 1.高并发综述](https://img-blog.csdnimg.cn/direct/786c2a0c57754fe3969064526dcb82b9.png)




