RTText.cpp
上传用户:qhonly
上传日期:2013-06-10
资源大小:487k
文件大小:1k
源码类别:

界面编程

开发平台:

Visual C++

  1. #include "StdAfx.h"
  2. #include "rttext.h"
  3. CRTText::CRTText(void)
  4. {
  5. }
  6. CRTText::~CRTText(void)
  7. {
  8. }
  9. BOOL CRTText::Compare(LPCTSTR String1,LPCTSTR String2,BOOL bCaseSensitive)
  10. {
  11. char *ptr1 = (char*)String1;
  12. char *ptr2 = (char*)String2;
  13. if(ptr1 == ptr2)return TRUE;
  14. if(ptr1 == NULL)return FALSE;
  15. if(ptr2 == NULL)return FALSE;
  16. if(bCaseSensitive)
  17. {
  18. while(TRUE)
  19. {
  20. if(*ptr1 != *ptr2)return FALSE;
  21. if(*ptr1 == NULL)
  22. {
  23. if(*ptr2 != NULL)
  24. return FALSE;
  25. else
  26. return TRUE;
  27. }
  28. if(*ptr2 == NULL)return FALSE;
  29. ptr1++;
  30. ptr2++;
  31. }
  32. }
  33. else
  34. {
  35. while(TRUE)
  36. {
  37. if(*ptr1 != *ptr2)
  38. {
  39. if(*ptr1 >= 'a' && *ptr1 <= 'z')
  40. {
  41. if( (*ptr1 - 32) != *ptr2)
  42. return FALSE;
  43. }
  44. else if(*ptr1 > 'A' && *ptr1 < 'Z')
  45. {
  46. if( (*ptr1 + 32) != *ptr2)
  47. return FALSE;
  48. }
  49. else
  50. {
  51. return FALSE;
  52. }
  53. }
  54. if(*ptr1 == NULL)
  55. {
  56. if(*ptr2 != NULL)
  57. return FALSE;
  58. else
  59. return TRUE;
  60. }
  61. if(*ptr2 == NULL)return FALSE;
  62. ptr1++;
  63. ptr2++;
  64. }
  65. }
  66. }