aboutsummaryrefslogtreecommitdiffstats
path: root/memory/stpncpy.c
blob: fa53db7c00ea316868e56da444076a8108cd68f3 (plain) (blame)
1
2
3
4
5
6
7
8
9
#include "memory.h"

char *stpncpy(char *destination, char const *source, size_t count)
{
	char *result = memccpy(destination, source, '\0', count);
	result = (result == NULL) ? &destination[count] : (result - 1);
	memset(result, 0, (size_t)(&destination[count] - result));
	return result;
}