C++常用字串處理函式及使用示例(轉)

ba發表於2007-08-15
C++常用字串處理函式及使用示例(轉)[@more@]char *strcpy(char *s1, const char *s2)
將字串s2複製到字串陣列s1中,返回s1的值

char *strncpy(char *s1, const char *s2, size_t n)
將字串s2中最多n個字元複製到字串陣列s1中,返回s1的值

char *strcat(char *s1, const char *s2)
將字串s2新增到字串s1的後面。s2的第一個字元重定義s1的null終止符。返回s1的值

char *strncat(char *s1, const char *s2, size_t n)
將字串s2中最多n個字元新增到字串s1的後面。s2的第一個字元重定義s1的null終止符。返回s1的值

int strcmp(const char *s1, const char *s2)
比較字串s1和字串s2。函式在s1等於、小於或大於s2時分別返回0、小於0或者大於0的值

int strncmp(const char *s1, const char *s2, size_t n)
比較字串s1中的n個字元和字串s2。函式在s1等於、小於或大於s2時分別返回0、小於0或者大於0的值

char * strtok(char *s1,const char *s2)
用一系列strtok呼叫將s1字串標記化(將字串分成各個邏輯元件,如同一行文字中的每個單詞),用字串s2所包含的字元分隔。首次呼叫時包含s1為第一個引數,後面呼叫時繼續標記化同一字串,包含NULL為第一個引數。每次呼叫時返回當前標記指標。如果函式呼叫時不再有更多標記,則返回NULL

size_t strlen(const char *s)
確定字串長度,返回null終止符之前的字元數

使用示例:

//原始碼在Visual c++6.0環境下編譯透過

#include

#include

int main()

{

char str1[50] = "Happy birthday to ", str2[] = "coffeehu";

char temp1[100],temp2[6], * temp;

char str[] = "This is a sentence with 7 tokens";

strcpy(temp1, str1);

strncpy(temp2, str1, 5);

temp2[5] = ';

cout << "strcpy result: " <
cout << "strncpy result: " << temp2 << " ";

cout << "strcat result: " << strcat(str1, str2) << " ";

cout << "strncat result: " << strncat(str1, str2, 6) <
cout << "strcmp result: " << strcmp(temp2,"Happ") <
cout << "strncmp result: " << strncmp(str1,"Happy",5) <
//strtok function eg.

temp = strtok(str, " ");

while(temp != NULL)

{

cout << temp <
temp = strtok(NULL, " ");

}

cout << "strlen result: " << strlen(str2) <
return 0;

}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-957457/,如需轉載,請註明出處,否則將追究法律責任。

相關文章