有没有人知道这段代码是什么意思
最后能得到啥结果
char* ReadRef(const char* ref, const char* cmds)
{
//cmss: id:asd pass:123456
//ref: id:
for (int i = 0; cmds[i]; i++)
{
if (cmds[i] == ref[0])
{
bool bfind = true;
int x= 0;
for (x = 0; ref[x]; x++)
{
if (ref[x] != cmds[i + x])
{
bfind = false;
break;
}
}
if (bfind) return (char*)&cmds[i + x];
}
}
return nullptr;
}
这段代码逻辑我搞不清楚,有没有高人指点一二
----------------------------------------------------------分割线
重新修改了一下问题,逻辑大概搞清楚了,但是if判断里,(ref[x] != cmds[i + x]),为什么cmds里面是i+x,而不是x,另外return cms[i+x],这里为什么是i+x,cmds[i+x]代表单个字符吧,这里应该是返回一串字符才对