Advertisement
Guest User

Untitled

a guest
Apr 18th, 2014
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. char* MyStrstr(char* pszSearchString, char* pszSearchWord);
  2. int main(int argc, char* argv[])
  3. {
  4. char szTemp1[20] = {0};
  5. char szTemp2[10] = {0};
  6. char * pszTemp1 = NULL;
  7. strcpy(szTemp1, "aabaaacaamaad");
  8. strcpy(szTemp2, "aa");
  9.  
  10. pszTemp1 = MyStrstr(szTemp1, szTemp2);
  11. printf("%s", pszTemp1);
  12. getch();
  13. return 0;
  14. }
  15.  
  16. char* MyStrstr(char* pszSearchString, char* pszSearchWord)
  17. {
  18. int nFcount = 0;
  19. int nScount = 0;
  20. int nSearchLen = 0;
  21. int nIndex = 0;
  22. char* pszDelString = NULL;
  23.  
  24. if(pszSearchString == NULL || pszSearchWord == NULL) {
  25. return NULL;
  26. }
  27.  
  28. while(pszSearchWord[nSearchLen] != '') {
  29. nSearchLen++;
  30. }
  31. if(nSearchLen <= 0){
  32. return pszSearchString;
  33. }
  34.  
  35. for(nFcount = 0; pszSearchString[nFcount] != ''; nFcount++) {
  36. if(pszSearchString[nFcount] == pszSearchWord[nScount]) {
  37. nScount++;
  38. } else {
  39. nScount = 0;
  40. }
  41.  
  42. if(nScount == nSearchLen) {
  43. nIndex = (nFcount - nScount) + 1;
  44. pszDelString = pszSearchString + nIndex;
  45. return pszDelString;
  46. }
  47. }
  48. return NULL;
  49. }
  50.  
  51. char * strstr(const char *in, const char *str)
  52. {
  53. char c;
  54. size_t len;
  55.  
  56. c = *str++;
  57. if (!c)
  58. return (char *) in; // Trivial empty string case
  59.  
  60. len = strlen(str);
  61. do {
  62. char sc;
  63.  
  64. do {
  65. sc = *in++;
  66. if (!sc)
  67. return (char *) 0;
  68. } while (sc != c);
  69. } while (strncmp(in, str, len) != 0);
  70.  
  71. return (char *) (in - 1);
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement