We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
I saw there's some C library extensions in Keil MDK. There's missing one very useful function that is a gnu extension :
Synopsis
#include <string.h>
size_t strnlen(const char *s, size_t maxlen);
Description The strnlen function returns the number of characters in the string pointed to by s, not including the terminating '\0' character, but at most maxlen. In doing this, strnlen looks only at the first maxlen characters at s and never beyond s+maxlen.
Return Value The strnlen function returns strlen(s), if that is less than maxlen, or maxlen if there is no '\0' character among the first maxlen characters pointed to by s.
This function is VERY useful when you have to manage strings copy and you d'ont want to crash your memory with an endless string !
Maybe in a future release ? :)
size_t strnlen (const char* s, size_t maxlen) { size_t len = 0; while ((len <= maxlen) && (*s)) { s++; len++; } return len; }