首页
社区
课程
招聘
[求助]strstr返回的字符串用strlen得到长度错误
发表于: 2016-8-15 17:37 4766

[求助]strstr返回的字符串用strlen得到长度错误

2016-8-15 17:37
4766
程序是DLL的,注入目标程序后HOOK
在HOOK返回函数调用strstr时得到的返回字符串并没有以'\0'结束
这个是什么问题?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 68
活跃值: (255)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
指针都不懂
2016-8-15 18:32
0
雪    币: 0
活跃值: (143)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
原因不是很清楚,等待大神出来回复。
不过只是想得到字符串的话,既然可以找到字符串地址【因为strstr返回的是字符串匹配到的地址】,加上我们要匹配的字符串长度,在后面补上‘\0’应该也行。
2016-8-16 11:53
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
strstr的代码应该很少吧,他只是找出指定字符串中包含给的子字符串的首地址,没有\0,字符串就不会终止
2016-8-16 13:35
0
雪    币: 7673
活跃值: (5497)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
str1="123456789ABCDEF"
str2="567"

strstr(str1,str2)返回的是56789ABCDEF,如果str1="123456789ABCDEF....N...省略1万字...XYZ",最后返回的也是 "56789ABCDEF....N...省略1万字...XYZ", 结果是 \0 结尾,如果 str2="000",返回的结果是NULL,结果也算是 \0 结尾.

你不会是想要返回的结果只是 "567"吧?,你确定你的思路对了没?

.
2016-8-16 18:45
0
游客
登录 | 注册 方可回帖
返回
//