4 #include <kern/types.h>
8 size_t vsnprintf(char *buf, size_t size, const char *str, va_list args);
9 size_t snprintf(char *buf, size_t size, const char *str, ...)
10 __attribute__((format(printf, 3, 4)));
11 size_t sprintf(char *buf, const char *str, ...)
12 __attribute__((format(printf, 2, 3)));
13 size_t printf(const char *str, ...)
14 __attribute__((format(printf, 1, 2)));
16 // FIXME: template/alignof versions
17 void *memcpy(void *dest, const void *src, size_t len);
18 void *memmove(void *dest, const void *src, size_t len);
19 int memcmp(const void *b1, const void *b2, size_t len);
20 void *memset(void *b, int ch, size_t len);
22 size_t strnlen(const char *s, size_t n);
23 size_t strlen(const char *s);
25 char *strcpy(char *dest, const char *src);
26 char *strncpy(char *dest, const char *src, size_t len);
27 char *strcat(char *dest, const char *src);
28 char *strncat(char *dest, const char *src, size_t len);
30 void bzero(void *b, size_t len);
32 void *malloc(size_t size);
39 // Placement new operators
41 inline void *operator new(size_t len, void *addr)
46 inline void *operator new[](size_t len, void *addr)