while reading man page strcpy, discovered function stpcpy exists. however, difference notice in man page is:
char * stpcpy(char *s1, const char *s2); char * strcpy(char *restrict s1, const char *restrict s2); so, restrict means here?
the restrict tells compiler s1 , s2 point different arrays , there no overlap in pointed-to arrays. in cases may allow compiler perform optimizations (i.e., possibly copy blocks of multiple characters without having check overlap).
note return value different: stpcpy returns pointer \0 copied destination buffer while strcpy returns pointer beginning of string (effectively return s1;).
Comments
Post a Comment