新聞中心
C語言strchr函數(shù),其中chr是什么單詞的縮
是char的縮寫, 也就是字符. 在string中查找字符的意思.
創(chuàng)新互聯(lián)主營朝天網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā),朝天h5小程序開發(fā)搭建,朝天網(wǎng)站營銷推廣歡迎朝天等地區(qū)企業(yè)咨詢
而char實(shí)際上是 character的縮寫.
不過在說C語言的時候, 平時說字符都是char的.
在C語言中strchr 是什么意思?
strchr所在頭文件:#include string.h
功能:用來查找某字符在字符串中首次出現(xiàn)的位置。
函數(shù)原型:char * strchr (const char *str, int c);
參數(shù)說明:str 為要查找的字符串,c 為要查找的字符。
返回值:如果找到指定的字符則返回該字符所在地址,否則返回 NULL。
注意:字符串 str 的結(jié)束標(biāo)志 NUL 也會被納入檢索范圍,所以 str 的組后一個字符也可以被定位。
示例:
#include?stdio.h
#include?stdlib.h
#include?string.h
int?main(){
char?*s?=?"0123456789012345678901234567890";
???? char?*p;
p?=?strchr(s,?'5');
???? printf("%ld\n",?s);
???? printf("%ld\n",?p);
???? system("pause");
return?0;
}
strchar 在C語言中的用法
是strchr嗎?
原型:extern char *strchr(char *s,char c);
用法:#include string.h
功能:查找字符串s中首次出現(xiàn)字符c的位置
說明:返回首次出現(xiàn)c的位置的指針,如果s中不存在c則返回NULL。
舉例:
// strchr.c
#include syslib.h
#include string.h
main()
{
char *s="Golden Global View";
char *p;
clrscr();
strchr(s,'V');
if(p)
printf("%s",p);
else
printf("Not Found!");
getchar();
return 0;
}
c語言 str函數(shù)
1、strcat()
此函數(shù)原型為 char *strcat(char *dest, const char *src).
功能為連接兩個字符串,把src連接到dest后面;返回dest地址
實(shí)現(xiàn)如下
[cpp] view plaincopy
char * strcat(char *dest,const char *src)
{
char* addr=dest;
while(*dest)//找到'\0'
{
dest++;
};
while(*dest++=*src++)
{};
return addr;
}
2、strcmp()
此函數(shù)的函數(shù)原型為 int strcmp(const char *str1, const char *str2).
功能為比較兩個字符串。
當(dāng)str1指向的字符串大于str2指向的字符串時,返回正數(shù)。
當(dāng)str1指向的字符串等于str2指向的字符串時,返回0。
當(dāng)str1指向的字符串小于str2指向的字符串時,返回負(fù)數(shù)。
實(shí)現(xiàn)如下:
[cpp] view plaincopy
int strcmp(const char *str1, const char *str2)
{
while(*str1==*str2)
{
if(*str1=='\0')
return 0;
str1++;
str2++;
}
return *str1-*str2;
}
3、strcpy()
此函數(shù)原型為 char *strcpy(char* dest, const char *src)
功能為拷貝字符串內(nèi)容到目的串,把src所指向的內(nèi)容拷貝到dest
實(shí)現(xiàn)如下
[cpp] view plaincopy
char *strcpy(char *dest,const char *src)
{
//assert(dest!=NULLsrc!=NULL);
char *addr=dest;
while(*dest++=*src++);
return addr;
}
4、strlen()
此函數(shù)原型為unsigned in strlen(const char *str)
功能為返回字符串str的長度(不包括'\0')。
實(shí)現(xiàn)如下:
[cpp] view plaincopy
unsigned int strlen(const char *str)
{
unsigned len=0;
while(*str!='\0')
{
len++;
str++;
}
return len;
}
5、strchr() strrchr()
char *strchr(char *str, char c)
功能為查找str中首次出現(xiàn)c的位置,如有有,則返回出現(xiàn)位置,否則返回NULL。實(shí)現(xiàn)如下:
[cpp] view plaincopy
char *strchr(char *str, char c)
{
while(*str!='\0'*str!=c)
{
str++;
}
return (*str==c? str: NULL);
}
char *strrchr(char *str, char c)
功能為查找str中最后一次出現(xiàn)c的位置,如有有,則返回出現(xiàn)位置,否則返回NULL。實(shí)現(xiàn)如下:
[cpp] view plaincopy
char *strrchr(char *str, char c)
{
char *p=str+strlen(str);//p指向最后一個字符
while(p!=str*p!=c)
p--;
if(p==str*p!=c)
return NULL;
else return p;
}
6、strcspn() strspn()
strcspn
原型:size_t strcspn(const char *pstr, const char *strCharset)
MSDN解釋為:在字符串pstr中搜尋strCharsret中所出現(xiàn)的字符,返回strCharset中出現(xiàn)的第一個字符在pstr中的出現(xiàn)位置。簡單的說,若strcspn返回的數(shù)值為n,則代表字符串strCharsrt開頭連續(xù)有n個字符不包含在pstr內(nèi)的字符。
功能:返回后面字符串中第一個不在前者出現(xiàn)的下表。
7、strdup()
此函數(shù)原型為char *strdup(const char *str)
功能為拷貝字符串到新建的內(nèi)存,返回內(nèi)存指針。若失敗,返回NULL。要注意,返回的指針指向的內(nèi)存在堆中,所以要手動釋放。
函數(shù)實(shí)現(xiàn):
[cpp] view plaincopy
char *strdup(const char *str)
{
char *p=NULL;
if(str(p=(char*)malloc(strlen(str)+1)))
strcpy(p,str);
return p;
8、strrev()
此函數(shù)的原型為char *strrev(char *str)
功能為反轉(zhuǎn)字符串,返回字符串指針。
函數(shù)實(shí)現(xiàn):
[cpp] view plaincopy
char *strrev(char *str)
{
if(str==NULL)
return NULL;
char *start=str;
char *end=str+strlen(str)-1;
char temp;
while(startend)
{
temp=*start;
*start=*end;
*end=temp;
start++;
end--;
}
return str;
}
9、strstr()
函數(shù)原型為char *strstr(const char str1, const char *str2)
功能為查找字符串str2在str1中出現(xiàn)的位置,找到則返回位置,否則返回NULL。
函數(shù)實(shí)現(xiàn):
[cpp] view plaincopy
char *strstr(const char str1, const char *str2)
{
int length1=strlen(str1);
int length2=strlen(str2);
while(length1=length2)
{
length1--;
if(!strncpy(str1,str2,length2))//比較前n個字符串,類似strcpy
return str1;
str1++;
}
return NULL;
}
文章名稱:c語言strchar函數(shù) c語言strchr函數(shù)的用法
當(dāng)前網(wǎng)址:http://www.dlmjj.cn/article/dojgdsd.html