Difference between and

前端 未结 2 717
臣服心动
臣服心动 2020-12-07 13:07

I noticed that there was (at least on Mac OS X) both a header and a header. man 3 string reveals that they conta

相关标签:
2条回答
  • 2020-12-07 13:39

    strings.h comes from the BSD branch in the unix evolution. Its content has been standardized by POSIX, but most of it is marked as legacy and can be easily replaced with other functions:

    int    bcmp(const void *, const void *, size_t); /* LEGACY, see memcmp */
    void   bcopy(const void *, void *, size_t); /* LEGACY, see memcpy, memmove */
    void   bzero(void *, size_t); /* LEGACY, see memset */
    int    ffs(int);
    char  *index(const char *, int); /* LEGACY, see strchr */
    char  *rindex(const char *, int); /* LEGACY, see strrchr */
    int    strcasecmp(const char *, const char *);
    int    strncasecmp(const char *, const char *, size_t);
    
    0 讨论(0)
  • 2020-12-07 13:43

    Typically <strings.h> just adds some useful but non-standard additional string functions to the standard header <string.h>. For maximum portability you should only use <string.h> but if you need the functions in <strings.h> more than you need portability then you can use <strings.h> instead of <string.h>.

    0 讨论(0)
提交回复
热议问题