c:
#include
1. 字串長度
extern int strlen(char *s); //返回s的長度,不包括結束符null
2. 字串比較
extern int strcmp(char *s1,char * s2);
extern int strncmp(char *s1,char * s2,int n);// 比較字串s1和s2的前n個字元。
extern int stricmp(char *s1,char * s2);//比較字串s1和s2,但不區分字母的大小寫。
extern int strnicmp(char *s1,char * s2,int n);//比較字串s1和s2的前n個字元但不區分大小寫。
extern int bcmp(const void *s1, const void *s2, int n);//比較字串s1和s2的前n個位元組是否相等,如果s1=s2或n=0則返回零,否則返回非零值。bcmp不檢查null。
說明:當s1s2時,返回值》0
3. 記憶體位元組比較
extern int memcmp(void *buf1, void *buf2, unsigned int count);
extern int memicmp(void *buf1, void *buf2, unsigned int count);//比較時不區分字母的大小寫。
說明:比較記憶體區域buf1和buf2的前count個位元組。
當buf1buf2時,返回值》0
4.附加
extern char *strcat(char *dest,char *src);//把src所指字串新增到dest結尾處(覆蓋dest結尾處的'/0')並新增'/0'。
extern char *strncat(char *dest,char *src,int n);//把src所指字串的前n個字元新增到dest結尾處(覆蓋dest結尾處的'/0')並新增'/0'。
說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。
5.複製
extern char *strcpy(char *dest,char *src);//把src所指由null結束的字串複製到dest所指的陣列中。
extern char *stpcpy(char *dest,char *src);//同上
extern char *strncpy(char *dest, char *src, int n);//把src所指由null結束的字串的前n個位元組複製到dest所指的陣列中。
extern void bcopy(const void *src, void *dest, int n);//將字串src的前n個位元組複製到dest中,bcopy不檢查字串中的空位元組null,函式沒有返回值。
extern char *strdup(char *s);複製字串s,返回指向被複製的字串的指標,他由malloc()分配且使用後可以由free()釋放。
說明:src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。返回指向dest的指標。
6.記憶體位元組複製
extern void *memcpy(void *dest, void *src, unsigned int count);//由src所指記憶體區域複製count個位元組到dest所指記憶體區域。src和dest所指記憶體區域不能重疊,函式返回指向dest的指標。
extern void *memmove(void *dest, const void *src, unsigned int count);//同上,但src和dest所指記憶體區域可以重疊,而複製後src內容會被更改。函式返回指向dest的指標。
extern void movmem(void *src, void *dest, unsigned int count);//由src所指記憶體區域複製count個位元組到dest所指記憶體區域。src和dest所指記憶體區域可以重疊,但複製後src內容會被更改。函式返回指向dest的指標。
extern void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count);//由src所指記憶體區域複製不多於count個位元組到dest所指記憶體區域,如果遇到字元ch則停止複製。返回指向字元ch後的第乙個字元的指標,如果src前n個位元組中不存在ch則返回null。ch被複製。
7.查詢
extern char *strchr(char *s,char c);//查詢字串s中首次出現字元c的位置。返回首次出現c的位置的指標,如果s中不存在c則返回null。
extern int strcspn(char *s1,char *s2);//在字串s1中搜尋s2中所出現的字元。返回第乙個出現的字元在s1中的下標值,即在s1中出現而s2中沒有出現的子串的長度。
extern char *strpbrk(char *s1, char *s2);//在字串s1中尋找字串s2中任何乙個字元相匹配的第乙個字元的位置,空字元null不包括在內。返回指向s1中第乙個相匹配的字元的指標,如果沒有匹配字元則返回空指標null。
extern char *strstr(char *haystack, char *needle);//從字串haystack中尋找needle第一次出現的位置(不比較結束符null)。返回指向第一次出現needle位置的指標,如果沒找到則返回null。
8.記憶體位元組查詢
extern void *memchr(void *buf, char ch, unsigned count);//從buf所指記憶體區域的前count個位元組查詢字元ch。如果成功,返回指向字元ch的指標;否則返回null。
9.轉換
extern char *strlwr(char *s);//將字串s轉換為小寫形式。
extern char *strupr(char *s);//將字串s轉換為大寫形式
10.重置
extern char *strset(char *s, char c);//把字串s中的所有字元都設定成字元c。返回指向s的指標。
extern void bzero(void *s, int n);//置位元組字串s的前n個位元組為零。
extern void setmem(void *buf, unsigned int count, char ch);//把buf所指記憶體區域前count個位元組設定成字元ch。
extern void *memset(void *buffer, int c, int count);//把buffer所指記憶體區域的前count個位元組設定成字元c。返回指向buffer的指標。
11.倒序
extern char *strrev(char *s);//把字串s的所有字元的順序顛倒過來(不包括空字元null)。返回指向顛倒順序後的字串指標。
12.分割字串
extern char *strtok(char *s, char *delim);//分解字串為一組標記串。s為要分解的字串,delim為分隔符字串。
說明:首次呼叫時,s必須指向要分解的字串,隨後呼叫要把s設成null。
strtok在s中查詢包含在delim中的字元並用null('/0')來替換,直到找遍整個字串。
返回指向下乙個標記串。當沒有標記串時則返回空字元null。
c++:
string str;
1. 字串長度
len = str.length();
len = str.size();
2. 字串比較
可以直接比較
也可以:
str1.compare(str2);
str1.compare(pos1,len1,str2,pos2,len2); 值為負,0 ,正。
nops 長度到完。
3. 附加
str2 = str1.substr();
str2 = str1.substr(pos1);
str2 = str1.substr(pos1,len1);
5. 字串搜尋
where = str1.find(str2);
where = str1.find(str2,pos1); pos1是從str1的第幾位開始。
where = str1.rfind(str2); 從後往前搜。
6. 插入字串
不是賦值語句。
str1.insert(pos1,str2);
str1.insert(pos1,str2,pos2,len2);
str1.insert(pos1,numchar,char); numchar是插入次數,char是要插入的字元。
7. 替換字串
str1.replace(pos1,str2);
str1.replace(pos1,str2,pos2,len2);
8. 刪除字串
str.erase(pos,len)
str.clear();
9. 交換字串
swap(str1,str2);
10. c --> c++
char *cstr = "hello";
string str1;
cstr = cstr;
string str2(cstr);
C C 字串處理函式
c char st 100 1.字串長度 strlen st 2.字串比較 strcmp st1,st2 strncmp st1,st2,n 把st1,st2的前n個進行比較。3.附加 strcat st1,st2 strncat st1,st2,n n表示連線上st2的前n個給st1,在最後不要加...
C C 字串處理函式
c char st 100 1.字串長度 strlen st 2.字串比較 strcmp st1,st2 strncmp st1,st2,n 把st1,st2的前n個進行比較。3.附加 strcat st1,st2 strncat st1,st2,n n表示連線上st2的前n個給st1,在最後不要加...
C C 字串相關處理
1.strcpy strcpy char dest,const char src 把從src位址開始且含有 0 結束符的字串複製到以dest開始的位址空間。2.strcmp strcmp char 字串1,char 字串2 比較兩個字串 設這兩個字串為str1,str2,若str1 str2,則返回...