4 ms·
#define strncpyz(d,s,l) *(strncpy(d,s,l)+(l))=0 Of course this one is unsafe for macro expansion. But well, its C :)
by Borg3 3y ago
#define strncpyz(d,s,l) *(strncpy(d,s,l)+(l))=0
Of course this one is unsafe for macro expansion. But well, its C :)
- teo_zero 3y agoI'd rather put the final nul at d+l-1 than at d+l, so that l can be the size of d, not "one more than the size of d": strncpyz(buf,src,sizeof buf);