當前位置:首頁 » 編程語言 » c語言字元串函數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言字元串函數

發布時間: 2022-02-16 22:32:55

c語言中的字元處理函數

這三個哪個都不是字元處理函數,也不是語句。若在最後都加一個分號,那就是三條語句,也不是函數。這樣的請三都是同一個意思,不過要知道*是char的組成部分,即char *型指針pWord。

❷ 在C語言中,字元串是用哪個函數的

字元串的函數很多,有輸入/輸出函數:gets()/puts(),有拷貝函數strcpy(),字元串連接函數:strcat(),字元串比較函數strcmp(),測長度函數:strlen(),大小寫轉換:strlwr()/strupr()等等,如果調用的話,都要在頭文件加預處理命令:#include 「string.h」。

❸ C語言:編寫一個函數,接受一個字元串和一個字元

1、可以寫一個函數接受一個字元串和一個字元,如果此字元出現在字元串中,就將串中的字元刪除,要求刪除該字元後,後續的字元向前移,以填充該空位。
2、常式:

#include<stdio.h>
#include<string.h>
#defineMAX80
voidDelete(charstr[],charc)
{
inti;
intl=strlen(str);
for(i=0;i<l;i++)
{
if(str[i]==c)
{
intj;
for(j=i;j<l;j++)
str[j]=str[j+1];
break;
}
}
}
intmain()
{
charstr[MAX],c;
printf("輸入一個字元串:");
gets(str);
printf("輸入一個字元:");
c=getchar();
Delete(str,c);
puts(str);
return0;
}

❹ C語言字元串處理函數




其實那些字元串函數並不復雜。任何一個的實現都不出五行代碼:

char *strcpy( char *dst, const char *src ) {
char *destination = dst;
while( *dst++ = *src++ )
;
return destination;
}

char *strcat( char *dst, const char *src ) {
char *destination = dst;
while( *dst++ )
;
strcpy( --dst, src );
return destination;
}

int strcmp( const char *s1, const char *s2 ) {
for( ; *s1 == *s2; s1++, s2++ )
if( *s1 == '\0' ) return 0;
return *s1 - *s2;
}

unsigned strlen( const char *s ) {
const char *t = s;
while( *t++ )
;
return --t - s;
}


❺ 關於C語言字元函數

puts、gets分別表示輸出、輸入一個字元
strcat表示連接兩個字元串
strcpy用於復制字元串
strcmp用於比較兩個字元串的大小(按字典順序)
具體的例子樓主可以去
網路
一下,這些基本的
C函數
應該都有詳細解釋的,我就不啰嗦了。

❻ c語言字元串處理函數有哪些

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(字元串)。

❼ C語言求一個關於字元串的函數

可利用strstr函數。
strstr函數功能是找出字元串中特定字元串第一次出現的位置。如果找到,返回字元串中出現特定字元串的地址;如果沒找到,返回空指針。如果要返回值是bool型的話,可以自寫一個函數根據strstr的返回值,判斷自寫函數的返回值。
如:
bool
strfind(*str1,*str2)
{
if(strstr(*str1,*str2)!=0)
return
true;
return
false;
}
如果要不區分大小寫,可以用strlwr(轉換為大寫)或strupr(轉換為小寫)將兩字元串同一轉換為大寫(或小寫)再作查找。

❽ C語言關於字元串的操作函數有哪些

string.h頭文件中包含的字元串函數

void*memcpy(void*dest,constvoid*src,size_tn);//將n位元組長的內容從一個內存地址復制到另一個地址;如果兩個地址存在重疊,則最終行為未定義
void*memmove(void*dest,constvoid*src,size_tn);//將n位元組長的內容從一個內存地址復制到另一個地址;與memcpy不同的是它可以正確作用於兩個存在重疊的地址
void*memchr(constvoid*s,charc,size_tn);//在從s開始的n個位元組內查找c第一次出現的地址並返回,若未找到則返回NULL
intmemcmp(constvoid*s1,constvoid*s2,size_tn);//對從兩個內存地址開始的n個字元進行比較
void*memset(void*,int,size_t);//用某種位元組內容覆寫一段內存空間
char*strcat(char*dest,constchar*src);//在字元串dest之後連接上src
char*strncat(char*dest,constchar*src,size_tn);//從src截取n個字元連接在字元串dest之後,返回dest字元串
char*strchr(constchar*str,intch);//從字元串str頭開始查找字元ch首次出現的位置
char*strrchr(constchar*str,intch);//從字元串str尾開始查找字元ch首次出現的位置
intstrcmp(constchar*,constchar*);//基於字典順序比較兩個字元串
intstrncmp(constchar*,constchar*,size_t);//基於字典順序比較兩個字元串,最多比較n個位元組
intstrcoll(constchar*,constchar*);//基於當前區域設置的字元順序比較兩個字元串
char*strcpy(char*str1,constchar*str2);//將str2拷貝給str1
char*strncpy(char*str1,constchar*str2,size_tn);//截取str2的n個字元拷貝給str1
char*strerror(int);//返回錯誤碼對應的解釋字元串,參見errno.h(非線程安全函數)
size_tstrlen(constchar*);//返回一個字元串的長度
size_tstrspn(constchar*s,constchar*strCharSet);//從字元串s的起始處開始,尋找第一個不出現在strCharSet中的字元,返回其位置索引值。換句話說,返回從字元串s的起始位置的完全由strCharSet中的字元構成的子串的最大長度。strspn為stringspan的縮寫。不支持多位元組字元集。
size_tstrcspn(constchar*s,constchar*strCharSet);//從字元串s的起始處開始,尋找第一個出現在strCharSet中的字元,返回其位置索引值。換句話說,返回從字元串s的起始位置的完全由不屬於strCharSet中的字元構成的子串的最大長度。strcspn為stringcomplementspan的縮寫。不支持多位元組字元集。
char*strpbrk(constchar*s,constchar*strCharSet);//在字元串s中查找strCharSet中任意字元第一次出現的位置的指針值。strpbrk為stringpointerbreak縮寫。不支持多位元組字元集。
char*strstr(constchar*haystack,constchar*needle);//在字元串haystack中查找字元串needle第一次出現的位置,heystack的長度必須長於needle
char*strtok(char*strToken,constchar*strDelimit);//將一個字元串strToken依據分界符(delimiter)分隔成一系列字元串。此函數非線程安全,且不可重入;但MSVC實現時使用了thread-localstaticvariable因而是線程安全的單仍然是不可重入,即在單線程中不能對兩個源字元串交替調用該函數來分析token,應當對一個字元串分析完成後再處理別的字元串。
size_tstrxfrm(char*dest,constchar*src,size_tn);//根據當前locale轉換一個字元串為strcmp使用的內部格式

❾ c語言字元串函數

for(初始化;判斷語句;循環變數的變化)
即使沒有,冒號不可以省略;

!(len2=strlen(s2))-》從右邊看,把strlen(s2)值賦給len2,然後(!len2),主要是否判斷是否為空

❿ C語言中有哪些字元串處理函數

你可以看一下頭文件string.h和stdio.h裡面的相關函數聲明,好多好多。
這里就不一一列出了……比如下面列出的只是其中一部分……
_CRTIMP char * __cdecl strcpy(char *, const char *);
_CRTIMP char * __cdecl strcat(char *, const char *);
_CRTIMP int __cdecl strcmp(const char *, const char *);
_CRTIMP size_t __cdecl strlen(const char *);
_CRTIMP char * __cdecl strchr(const char *, int);
_CRTIMP int __cdecl _strcmpi(const char *, const char *);
_CRTIMP int __cdecl _stricmp(const char *, const char *);
_CRTIMP int __cdecl strcoll(const char *, const char *);
_CRTIMP int __cdecl _stricoll(const char *, const char *);
_CRTIMP int __cdecl _strncoll(const char *, const char *, size_t);
_CRTIMP int __cdecl _strnicoll(const char *, const char *, size_t);
_CRTIMP size_t __cdecl strcspn(const char *, const char *);
_CRTIMP char * __cdecl _strp(const char *);
_CRTIMP char * __cdecl _strerror(const char *);
_CRTIMP char * __cdecl strerror(int);
_CRTIMP char * __cdecl _strlwr(char *);
_CRTIMP char * __cdecl strncat(char *, const char *, size_t);
_CRTIMP int __cdecl strncmp(const char *, const char *, size_t);
_CRTIMP int __cdecl _strnicmp(const char *, const char *, size_t);
_CRTIMP char * __cdecl strncpy(char *, const char *, size_t);
_CRTIMP char * __cdecl _strnset(char *, int, size_t);
_CRTIMP char * __cdecl strpbrk(const char *, const char *);
_CRTIMP char * __cdecl strrchr(const char *, int);
_CRTIMP char * __cdecl _strrev(char *);
_CRTIMP size_t __cdecl strspn(const char *, const char *);
_CRTIMP char * __cdecl strstr(const char *, const char *);
_CRTIMP char * __cdecl strtok(char *, const char *);
_CRTIMP char * __cdecl _strupr(char *);
_CRTIMP size_t __cdecl strxfrm (char *, const char *, size_t);