mempcpy stpcpy和stpncpy的簡介

2021-08-07 04:35:14 字數 1047 閱讀 5860

mempcpy、stpcpy和stpncpy其實功能和memcpy、strcpy、strncpy的功能一樣,區別在於前者返回的是複製之後的末尾位址,後者返回的是複製之後的起始位址。

標頭檔案:string.h

函式名:void *mempcpy(void *dest, const void *src, size_t len);

功能:複製src的資料直到指定的位元組資料(len)已經被複製完全到dest裡面,返回的位址為dest隨後的那乙個位元組

附上glibc-2.26裡的mempcpy的原碼:

/* copy memory to memory until the specified number of bytes

has been copied, return pointer to following byte.

overlap is not handled correctly. */

void *mempcpy (void *dest, const void *src, size_t len)

函式名:char *stpcpy(char *dest, const char *src);

附上glibc-2.26裡的stpcpy的原碼:

/* copy src to dest, returning the address of the terminating '\0' in dest.  */

char *stpcpy (char *dest, const char *src)

函式名:char *stpncpy(char *dest, const char *src, size_t n);

附上glibc-2.26裡的stpncpy的原碼:

/* copy no more than n characters of src to dest, returning the address of

the terminating '\0' in dest, if any, or else dest + n.  */

char *stpncpy (char *dest, const char *src, size_t n)

彙編檔案 s 和 S 區別

s 組合語言源程式 操作 彙編 s組合語言源程式 操作 預處理 彙編 1.小寫的 s檔案,在後期階段不會再進行預處理操作了,所以我們不能在其內寫上預處理語句。一般是 c 檔案經過彙編器處理後的輸出。如 gcc 編譯器就可以指定 s 選項進行輸出,且是經過預處理器處理後 的了。2.大寫的 s 檔案,還...

彙編檔案 s和 S的區別

s 組合語言源程式 操作 彙編 s組合語言源程式 操作 預處理 彙編 1.小寫的 s檔案,在後期階段不會再進行預處理操作了,所以我們不能在其內寫上預處理語句。一般是 c 檔案經過彙編器處理後的輸出。如 gcc 編譯器就可以指定 s 選項進行輸出,且是經過預處理器處理後 的了。2.大寫的 s 檔案,還...

格式化輸出 s和 S的區別

使用s時,printf是針對單位元組字元的字串,而wprintf是針對寬字元的 使用s時,正好相反,printf針對寬字元 cstring中的format與printf類似,在unicode字符集的工程中,使用 cstring str1,str2 str1.format t s str2 時 s專指...