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)