1 krisbash 1.1 #if !defined(DEST) || !defined(STRLCPY)
2 # error "internal file: do not include!"
3 #endif
4
5 size_t STRLCPY(
6 _Out_writes_z_(size) DEST* dest,
7 _In_z_ const SRC* src,
8 size_t size)
9 {
10 const SRC* start = src;
11
12 if (size)
13 {
14 DEST* end = dest + size - 1;
15
16 while (*src && dest != end)
17 *dest++ = (DEST)*src++;
18
19 *dest = '\0';
20 }
21
22 krisbash 1.1 while (*src)
23 src++;
24
25 return src - start;
26 }
|