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

有關字元串的函數c語言

發布時間: 2022-05-17 19:31:28

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語言關於字元串的函數

string里有一個這樣的函數,我覺得挺符合你的要求
函數名: char* strstr(char *haystack, char *needle)
功 能: 從字元串haystack中尋找needle第一次出現的位置(不比較結束符NULL)
頭文件:#include<string.h>
說明:返回指向第一次出現needle位置的指針,如果沒找到則返回NULL

⑶ 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);

⑷ 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語言中對字元串進行操作的標准庫函數有哪些

1)字元串操作
strcpy(p, p1) 復制字元串
strncpy(p, p1, n) 復制指定長度字元串
strcat(p, p1) 附加字元串
strncat(p, p1, n) 附加指定長度字元串
strlen(p) 取字元串長度
strcmp(p, p1) 比較字元串
strcasecmp忽略大小寫比較字元串
strncmp(p, p1, n) 比較指定長度字元串
strchr(p, c) 在字元串中查找指定字元
strrchr(p, c) 在字元串中反向查找
strstr(p, p1) 查找字元串
strpbrk(p, p1) 以目標字元串的所有字元作為集合,在當前字元串查找該集合的任一元素
strspn(p, p1) 以目標字元串的所有字元作為集合,在當前字元串查找不屬於該集合的任一元素的偏移
strcspn(p, p1) 以目標字元串的所有字元作為集合,在當前字元串查找屬於該集合的任一元素的偏移
* 具有指定長度的字元串處理函數在已處理的字元串之後填補零結尾符

2)字元串到數值類型的轉換
strtod(p, ppend) 從字元串 p 中轉換 double 類型數值,並將後續的字元串指針存儲到 ppend 指向的 char* 類型存儲。
strtol(p, ppend, base) 從字元串 p 中轉換 long 類型整型數值,base 顯式設置轉換的整型進制,設置為 0 以根據特定格式判斷所用進制,0x, 0X 前綴以解釋為十六進制格式整型,0 前綴以解釋為八進制格式整型
atoi(p) 字元串轉換到 int 整型
atof(p) 字元串轉換到 double 符點數
atol(p) 字元串轉換到 long 整型

3)字元檢查
isalpha() 檢查是否為字母字元
isupper() 檢查是否為大寫字母字元
islower() 檢查是否為小寫字母字元
isdigit() 檢查是否為數字
isxdigit() 檢查是否為十六進制數字表示的有效字元
isspace() 檢查是否為空格類型字元
iscntrl() 檢查是否為控制字元
ispunct() 檢查是否為標點符號
isalnum() 檢查是否為字母和數字
isprint() 檢查是否是可列印字元
isgraph() 檢查是否是圖形字元,等效於 isalnum() | ispunct()

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

字元串連接函數:strcat
字元串復制函數:strcpy
字元串比較函數:strcmp
測字元串長度函數:strlen

⑺ C語言關於字元串的函數有哪些……

額。。。不貼過來了
http://blog.csdn.net/crazyguang/article/details/2421083
復制的函數有
char* strcpy(char* str1,char* str2);
char *strncpy(char *dest, const char *src,int count)
void *memcpy(void *dest, const void *src, size_t n)
void *memmove(void *dest, const void *src, size_t n)

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

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

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

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