C语言库函数strstr查找字符串失败问题

鱼卡日C语言 2023-11-08 10:46:49 2568阅读

请教一下,最近项目中使用C语言库函数strstr函数处理4G模块返回的字符串时,发现有时能正常查找到对应字符串,有时函数返回NULL。但是肉眼可见要查找的字符串确实在原
来的字符串中,用strstr函数确找不到,这是什么原因呢?

标签: #C语言#

提示:如果此问题没有解决您的需求,您可以点击 “我也要问” 在线咨询。 我也要问

若此问题存在违规行为,您可以点击 “举报”

2条回答

  • 盛夏之蝉
    2023-11-08 10:50:04 已采纳
    看看被查找的字符串前面部分是不是多了0x00,也就是‘ \ 0 ’,表示字符串结尾,所以strstr函数不会接着向后查找,因此需要在执行strstr函数前对数据进行处理。
    658 举报
  • 人不范二枉少年
    2023-11-08 10:51:22
    目标‘字符串’中含有0x00数据,strstr()函数碰到0x00就终止了查找,所以0x00后面的目标字符无法查到,strstr()返回的是0x0地址,指向的字符是0x00上的字符。

      可以在用strstr查找之前加了一个剔除0x00数据才小程序,去掉待检数组中的0x00数据。

    6849 举报
103电阻是多少
STM32 38732人阅读
Linux内核printfk打印信息怎么打开
Linux驱动 8813人阅读
ECxx旋转编码器如何消除抖动和杂波
传感器设计与应用 5470人阅读

快速提问,在线解答

1

描述需求

填写需求概要标题,补充详细需求

2

耐心等

等待网友或网站工作人员在线解答

3

巧咨询

还有疑问?及时追问回复

立即咨询