From Jason Turner

[cstring.syn]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpkycapfg2/{from.md → to.md} +17 -15
tmp/tmpkycapfg2/{from.md → to.md} RENAMED
@@ -14,21 +14,21 @@ namespace std {
14
  int strcmp(const char* s1, const char* s2);
15
  int strcoll(const char* s1, const char* s2);
16
  int strncmp(const char* s1, const char* s2, size_t n);
17
  size_t strxfrm(char* s1, const char* s2, size_t n);
18
  const void* memchr(const void* s, int c, size_t n); // see [library.c]
19
- void* memchr(void* s, int c, size_t n) // see [library.c]
20
- const char* strchr(const char* s, int c) // see [library.c]
21
- char* strchr(char* s, int c) // see [library.c]
22
  size_t strcspn(const char* s1, const char* s2);
23
- const char* strpbrk(const char* s1, const char* s2) // see [library.c]
24
- char* strpbrk(char* s1, const char* s2) // see [library.c]
25
- const char* strrchr(const char* s, int c) // see [library.c]
26
- char* strrchr(char* s, int c) // see [library.c]
27
  size_t strspn(const char* s1, const char* s2);
28
- const char* strstr(const char* s1, const char* s2) // see [library.c]
29
- char* strstr(char* s1, const char* s2) // see [library.c]
30
  char* strtok(char* s1, const char* s2);
31
  void* memset(void* s, int c, size_t n);
32
  char* strerror(int errnum);
33
  size_t strlen(const char* s);
34
  }
@@ -38,16 +38,18 @@ namespace std {
38
 
39
  The contents and meaning of the header `<cstring>` are the same as the C
40
  standard library header `<string.h>`.
41
 
42
  The functions `strerror` and `strtok` are not required to avoid data
43
- races ([[res.on.data.races]]).
44
 
45
- The functions `memcpy` and `memmove` are signal-safe ([[csignal.syn]]).
 
 
 
46
 
47
  [*Note 1*: The functions `strchr`, `strpbrk`, `strrchr`, `strstr`, and
48
- `memchr`, have different signatures in this International Standard, but
49
- they have the same behavior as in the C standard library (
50
- [[library.c]]). — *end note*]
51
 
52
- ISO C 7.24.
53
 
 
14
  int strcmp(const char* s1, const char* s2);
15
  int strcoll(const char* s1, const char* s2);
16
  int strncmp(const char* s1, const char* s2, size_t n);
17
  size_t strxfrm(char* s1, const char* s2, size_t n);
18
  const void* memchr(const void* s, int c, size_t n); // see [library.c]
19
+ void* memchr(void* s, int c, size_t n); // see [library.c]
20
+ const char* strchr(const char* s, int c); // see [library.c]
21
+ char* strchr(char* s, int c); // see [library.c]
22
  size_t strcspn(const char* s1, const char* s2);
23
+ const char* strpbrk(const char* s1, const char* s2); // see [library.c]
24
+ char* strpbrk(char* s1, const char* s2); // see [library.c]
25
+ const char* strrchr(const char* s, int c); // see [library.c]
26
+ char* strrchr(char* s, int c); // see [library.c]
27
  size_t strspn(const char* s1, const char* s2);
28
+ const char* strstr(const char* s1, const char* s2); // see [library.c]
29
+ char* strstr(char* s1, const char* s2); // see [library.c]
30
  char* strtok(char* s1, const char* s2);
31
  void* memset(void* s, int c, size_t n);
32
  char* strerror(int errnum);
33
  size_t strlen(const char* s);
34
  }
 
38
 
39
  The contents and meaning of the header `<cstring>` are the same as the C
40
  standard library header `<string.h>`.
41
 
42
  The functions `strerror` and `strtok` are not required to avoid data
43
+ races [[res.on.data.races]].
44
 
45
+ The functions `memcpy` and `memmove` are signal-safe [[support.signal]].
46
+ Both functions implicitly create objects [[intro.object]] in the
47
+ destination region of storage immediately prior to copying the sequence
48
+ of characters to the destination.
49
 
50
  [*Note 1*: The functions `strchr`, `strpbrk`, `strrchr`, `strstr`, and
51
+ `memchr`, have different signatures in this document, but they have the
52
+ same behavior as in the C standard library [[library.c]]. — *end note*]
 
53
 
54
+ See also: ISO C 7.24
55