home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Genie / Projects / DevGear / Source / Includes / pstring.h < prev   
Encoding:
C/C++ Source or Header  |  2000-06-24  |  1.3 KB  |  45 lines

  1. /*    =========
  2.  *    pstring.h
  3.  *    =========
  4.  */
  5.  
  6. #include <string.h>
  7.  
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11.  
  12. /* #define COPY_CAT */
  13.  
  14. /* Concatenate a Pascal string onto a C string. */
  15. char *strPcat(char *dest, const unsigned char *src);
  16. /* Concatenate a C string onto a Pascal string. */
  17. unsigned char *Pstrcat(unsigned char *dest, const char *src);
  18. /* Concatenate a Pascal string onto a Pascal string. */
  19. unsigned char *PstrPcat(unsigned char *dest, const unsigned char *src);
  20. /* */
  21. unsigned char *Pstrncat(unsigned char *dest, const char *src, size_t len);
  22.  
  23. #ifdef COPY_CAT
  24. #define strPcpy(dest, src) (*dest = '\0', strpcat(dest, src))
  25. #define Pstrcpy(dest, src) (*dest = '\0', pstrcat(dest, src))
  26. #define PstrPcpy(dest, src) (*dest = '\0', pstrpcat(dest, src))
  27. #define Pstrncpy(dest, src) (*dest = '\0', pstrncat(dest, src))
  28. #else
  29. /* Copy a Pascal string to a C string. */
  30. char *strPcpy(char *dest, const unsigned char *src);
  31. /* Copy a C string to a Pascal string. */
  32. unsigned char *Pstrcpy(unsigned char *dest, const char *src);
  33. /* Copy a Pascal string to a Pascal string. */
  34. unsigned char *PstrPcpy(unsigned char *dest, const unsigned char *src);
  35. /* */
  36. unsigned char *Pstrncpy(unsigned char *dest, const char *src, size_t len);
  37. #endif
  38.  
  39. /* See if two Pascal strings are equal. */
  40. int Pstreq(const unsigned char *a, const unsigned char *b);
  41.  
  42. #ifdef __cplusplus
  43. }
  44. #endif
  45.