本帖最后由 xiaojuan 于 2014-9-24 22:38 編輯
//:Vc++6.0 String strrchr函數
//功能:查找字符串s中最后一次出現字符c的位置
//參數:str 為目標字符串 ch 為要查找的字符
//返回值:str 為找到最后一個字符的地址
#include<stdio.h>
const char *strrchr(const char *str, int ch);
int main()
{
char str[] = "This is a sample string";
const char *pch;
pch = strrchr(str,'s');
printf("Last occurence of 's' found at %d\n",pch-str+1);
return 0;
}
const char * strrchr(const char *str, int ch)
{
if (str == NULL)
{
perror("str");
return NULL;
}
const char *temp = str;
while (*str++ != '\0');
str--;
while (str != temp) //和首地址比較
{
if (*str != (char)ch) //將ch數值強轉為字符型
str--;
else
return str;
}
return NULL;
}
//在vc++6.0中的運行結果為:Last occurence of 's' found at 18
|