C語言中的標準函數庫中的strchr()函數可以實現查找字符串中的某個字符。
目前創新互聯建站已為上千家的企業提供了網站建設、域名、虛擬主機、網站運營、企業網站設計、長安網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。
C語言strchr()函數:
查找某字符在字符串中首次出現的位置
頭文件:#include
string.h
strchr()
用來查找某字符在字符串中首次出現的位置,其原型為:
char
*
strchr
(const
char
*str,
int
c);
【參數】str
為要查找的字符串,c
為要查找的字符。
strchr()
將會找出
str
字符串中第一次出現的字符
c
的地址,然后將該地址返回。
注意:字符串
str
的結束標志
NUL
也會被納入檢索范圍,所以
str
的組后一個字符也可以被定位。
【返回值】如果找到指定的字符則返回該字符所在地址,否則返回
NULL。
返回的地址是字符串在內存中隨機分配的地址再加上你所搜索的字符在字符串位置。設字符在字符串中首次出現的位置為
i,那么返回的地址可以理解為
str
+
i。
提示:如果希望查找某字符在字符串中最后一次出現的位置,可以使用
strrchr()
函數。
字符串的函數很多,有輸入/輸出函數:gets()/puts(),有拷貝函數strcpy(),字符串連接函數:strcat(),字符串比較函數strcmp(),測長度函數:strlen(),大小寫轉換:strlwr()/strupr()等等,如果調用的話,都要在頭文件加預處理命令:
#include
“string.h”。
1、puts函數——輸出字符串的函數
一般的形式為puts(字符串組)
作用:將一個字符串輸出到終端。如,char一個string,并賦予初值。調用puts(string);進行字符串的輸出。
2、gets函數——輸入字符串的函數
一般的形式:gets(字符數組)
作用:從終端輸入一個字符串到字符數組,并且得到一個函數值成為字符數組的起始地址。
gets(str);
鍵盤輸入,,,,你懂得。
注意:puts和gets函數只能輸出或者輸入一個字符串。
3、strcat函數——字符串連接函數
一般的形式:strcat(字符數組1,字符數組2);
作用:把兩個字符串數組中字符串連接起來,把字符串2連接到字符串1的后面。
說明:字符數組1必須足夠大,以便容納連接后的新字符串。
4、strcpy/strncpy函數——字符串復制函數
一般形式:strcpy(字符數組1,字符串2);
作用:將字符串2復制到字符數組1中去。
如:char str1[10],str2[]="DongTeng";
strcpy(str1,str2);
執行后的結果為:你懂得
注意:
1. 不能用賦值語句直接將一個字符串常量或者字符數組直接給一個字符數組。
2. 用strncpy可以賦值指定的位置的字符。strncpy(str1,str2,3);將str2中的第3個字符復制到str1中。
5、strcmp函數——字符串比較函數
一般形式:strcmp(字符串1,字符串2);
作用:用來比較兩個字符串的差異。具有不同的比較規則。
6、strlen函數——測字符串長度的函數
一般形式:strlen(字符數組);
如:char str[10]="DongTeng";
printf("%d",strlen(str));
得到的結果是:5
7、strlwr函數——轉換為小寫的函數
一般形式:strlwr(字符串);
8、strupr函數——轉換為大寫的函數
一般形式:strupr(字符串)。
用strstr這個函數
包含文件:string.h
函數名: strstr
函數原型:extern char *strstr(char *str1, char *str2);
功能:找出str2字符串在str1字符串中第一次出現的位置(不包括str2的串結束符)。
返回值:返回該位置的指針,如找不到,返回空指針。
可以使用strncpy()來將復制字符串中前n個字符。比如:
char str1[] = "this is a string";
char str2[3];
strncpy(str2, str1, 2);
str2[2] = '\0'; // 此時str2="th"
本文標題:c語言中獲取字符的函數 C語言取字符
當前路徑:http://m.kartarina.com/article6/dodeeig.html
成都網站建設公司_創新互聯,為您提供搜索引擎優化、、虛擬主機、外貿建站、網站策劃、網站導航
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯