關於string.h中字符串的操作


                                                      string.h中字符操作的函數

 注意:**對字符數組的多次操作需要進行賦初值。

或者善於用memset()函數進行清空數組的操作。

 否則容易出現錯誤。 string.h文件中函數的用法加上本人的個人見解。    標注有返回值的 返回值都是會用到的   如果沒標注返回值則說明返回值不常用。

1、函數名:strcpy  字符串拷貝  (注意:該函數 只允許把指針拷貝到數組中,或者數組拷貝到數組中, 不允許把任何東西拷貝到指針中,如果要想拷貝到指針中可以進行復制運算‘=’。使用 ‘=’的話只能把指針付給指針才能達到字符串復制的效果,如果是數組的話只能復制一個 字符。)

函數原型: char *strcpy(char *str1,char const *str2);

<-------<------<-----<-----<-----------

2、函數名:strcat            字符串連接

char *strcat(char *destin, char const *source);

<-------<----

3、函數名:strchr              查找給定字符所在字符串中的位置

char* strchr(char *str,char c);

     成功返回查找的字符所在字符串中的位置,

   失敗返回 NULL

4、函數名:strcmp            字符串比較

int  strcmp(char *str1,char *str2);

返回值為  0  的話說明兩個 字符串  相等;

返回值  >0  的話說明    str1>str2;

5、函數名:strncmp              字符串前N個字節比較

int  strncmp(char str1,str2,unsigend maxle);

返回值為  0  的話說明兩個字符串   相等;

返回值為    >0    的話說明    str1>str2;

返回值為    <0    的話說明    str1<str2;

  6、函數名:strcspn            查找字符串中第一個給定字符集內容段

int strcspn(char * str1,char *str2);

返回值為  查到的  第一個字符   所在的位置。

 

7、函數名:strdup             將字符串拷貝到新建的字符串中

char *strdup(char *str) ;

返回值   為       str字符串中的內容

 

8、函數名:stricmp             以大小寫不敏感的方式比較兩字符串

int stricmp(char *str1,char *str2);

返回值同strcmp()  ,strncmp() ;  

9、函數名:strerror            返回指向錯誤信息的指針

char *strerror(int errnum);

使用實例:char *buf= NULL;

                  buf = strerror(errno);

  返回值錯誤的信息。  

10、函數名:strncpy             復制字符串前N個字節

char *strncpy(char *str1,char const *str2,int n);

返回值為 *str1  .

11、函數名:strnicmp             比較字符串前 n 個字節的大小  (不區分大小寫)

int strnicmp(char *str1,char *str2);

返回值同 stricmp。

12、函數名:strnset             將一個字符串的前n個字符都設為指定字符

char *strnect(char *str,char ch,unsigned n);

 

13、函數名:strpbrk             在字符串str1中找str2任意一個字符最先出現的位置

char *strpbrk(char *str1,char *str2);

返回值 如果有則返回  str1中第一個匹配的字符以及之后的字符組成的字符串。

(可以自己練習一下,打印一下返回值,同樣所有的函數都可以自己打印一下返回值。)

返回值 如果沒有  則返回NULL

14、函數名:strrchr             在字符串中查找字符最后出現的位置

char *strrchr(char *str1,char ch);

返回值  如果有則返回 包含最后一個匹配的字符與其后面的字符組成的字符串 的指針。

返回值  如果沒有則返回  false

 

15、函數名:strrev             將一個字符串的順序顛倒過來

char * strrev(char *str);

返回值  顛倒順序之后的字符串的指針。

 

16、strset    將一個字符串所有的字符全部都設置為一個字符

char *strset(char *str,char ch);

返回值  為替換后的字符串。  

17、strspn    

功 能: 在串中查找指定字符集的子集的第一次出現   

用 法: int strspn(char *str1, char *str2);

 

18、strstr  

功 能: 在串中查找指定字符串的第一次出現   

用 法: char *strstr(char *str1, char *str2);

返回包括找到的那個字符串以及之后的字符串組合成的字符串的指針;

 

19、strtod  

功 能: 將字符串轉換為double型值   

用 法: double strtod(char *str, char **endptr);

 

20、strtok    

功 能: 查找由在第二個字符串中指定的分界符分隔開的單詞   

用 法: char *strtok(char *str1, char *str2)

 

21、strtol   

功 能: 將串轉換為長整數   

用 法: long strtol(char *str, char **endptr, int base);

 

22、strupr    

功 能: 將字符串中的小寫字母轉換為大寫字母   

法: char *strupr(char *str);

返回轉換后的字符串的指針。

 

23、swab    

功 能: 交換相鄰的兩個字節(交換to里面的字節,並且存儲到from里面,

第三個參數是to里面的字節數)。

用 法: void swab (char *from, char *to, int nbytes)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM