如何定位一个子串在一个字符串里最后一次出现的位置

怎么定位一个子串在一个字符串里最后一次出现的位置forexampleString strdeichengcheLacheddString su

怎么定位一个子串在一个字符串里最后一次出现的位置
 
  for example

  String str="deichengcheLachedd";
  String substr="che";

 如何定位substr在str里最后一次出现的位置,本例为14 ??


[解决办法]
笨办法是这样的:
char *LastOccurence(char *szStr, char *szSub) {
int nSrcLen = strlen(szSrc);
int nSubZLen = strlen(szSub);

char *pch = szStr + (nSrcLen - nSubLen);
while ( pch > szStr ) {
if ( strncmp(pch, szSub, nSubLen) == 0 )
return pch;
pch--;
}

return NULL;
}