sim900a.c中的(const char*)USART2_RX_BUF作用

2019-08-22 13:47发布

u8* sim900a_check_cmd(u8 *str)
{
    char *strx=0;
    if(USART2_RX_STA&0X8000) //接收到一次数据了
     { 
            USART2_RX_BUF[USART2_RX_STA&0X7FFF]=0;//添加结束符
            strx=strstr((const char*)USART2_RX_BUF,(const char*)str);
    } 
    return (u8*)strx;
}

这个函数中strx=strstr((const char*)USART2_RX_BUF,(const char*)str);这里面全局数组USART2_RX_BUF强制转换const是什么作用。USART2_RX_BUF不是一个变量么?谢谢大家啦~~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
木頭love@rong
2019-08-22 16:49
包含文件:string.h
函数名: strstr

extern char *strstr(char *str1, const char *str2);
 strstr(str1,str2)
str1: 被查找目标 string expression to search.
str2: 要查找对象 The string expression to find.
返回值:若str2是str1的子串,则先确定str2在str1的第一次出现的位置,并返回此位置到str1末尾的所有字符;如果str2不是str1的子串,则返回NULL。(注:若想返回str2在str1第一次出现的位置,不是这个函数)
你先把strstr()这个函数的用法搞清楚了就明白了,这个函数的大致功能是:从串口2接收到的数据中截取从“str”开始一直到结尾的字符串,然后返回这个字符串

一周热门 更多>