C語言string.h常用函數總結

來源:互聯網
上載者:User

標籤:地址空間   strncat   填充   src   har   遇到   自動   c語言   指標   

void *memcpy(void *dest, const void *src, size_t n);

從源src所指的記憶體位址的起始位置開始拷貝n個位元組到目標dest所指的記憶體位址的起始位置中.


void *memmove( void* dest, const void* src,size_t count);

由src所指記憶體地區複製count個位元組到dest所指記憶體地區。
memmove用於從src拷貝count個字元到dest,如果目的地區域和來源區域有重疊的話,memmove能夠保證源串在被覆蓋之前將重疊地區的位元組拷貝到目的地區域中。但複製後src內容會被更改。但是當目的地區域與來源區域沒有重疊則和memcpy函數功能相同。


void *memset(void *s, int ch, size_t n);

將s中前n個位元組(typedef unsigned int size_t)用ch替換並返回s。
memset作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或數組進行清零操作的一種最快方法.


int memcmp(const void *buf1, const void *buf2, unsigned int count);

比較記憶體地區buf1和buf2的前count個位元組。
當buf1<buf2時,傳回值<0
當buf1=buf2時,傳回值=0
當buf1>buf2時,傳回值>0


extern char *strcpy(char* dest, const char *src);

把從src地址開始且含有NULL結束符的字串複製到以dest開始的地址空間.src和dest所指記憶體地區不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。


char * strncpy(char *dest, char *src,size_t num);

複製src中的內容(字元,數字、漢字....)到dest,複製多少由num的值決定,返回指向dest的指標。如果遇到null字元(‘\0‘),且還沒有到num個字元時,就用(num - n)(n是遇到null字元前已經有的非null字元個數)個null字元附加到destination。


extern char *strcat(char *dest,char *src);

把src所指字串添加到dest結尾處(覆蓋dest結尾處的‘\0‘)並添加‘\0‘。src和dest所指記憶體地區不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。


extern char *strncat(char *dest,char *src,int n);

把src所指字串的前n個字元添加到dest結尾處(覆蓋dest結尾處的‘\0‘)並添加‘\0‘。src和dest所指記憶體地區不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。


extern int strcmp(const char *s1,const char * s2);

比較字串s1和s2。
當s1<s2時,傳回值<0
當s1==s2時,傳回值=0
當s1>s2時,傳回值>0
即:兩個字串自左向右逐個字元相比(按ASCII值大小相比較),直到出現不同的字元或遇‘\0‘為止。


int strncmp(char *str1, char *str2, int maxlen);

此函數功能即比較字串str1和str2的前maxlen個字元。

如果前maxlen位元組完全相等,傳回值就=0;

在前maxlen位元組比較過程中,如果出現str1[n]與str2[n]不等,則返回(str1[n]-str2[n])。



int strcasecmp (const char *s1, const char *s2);

strcasecmp()用來比較參數s1和s2字串,比較時會自動忽略大小寫差異。

若參數s1和s2字串相等則返回0。

s1大於s2則返回大於0 的值。

s1 小於s2 則返回小於0的值。



int strncasecmp(const char *s1, const char *s2, size_t n)

strncasecmp()用來比較參數s1和s2字串前n個字元,比較時會自動忽略大小寫差異,

若參數s1和s2字串相同則返回0 

s1若大於s2則返回大於0的值

s1若小於s2則返回小於0的值.

 

extern char *strchr(const char *s,char c);

尋找字串s中首次出現字元c的位置,返回首次出現c的位置的指標,如果s中不存在c則返回NULL。


extern unsigned int strlen(char *s);

計算字串s的(unsigned int型)長度,不包括‘\0‘在內.返回s的長度,不包括結束符NULL。

C語言string.h常用函數總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.