C++中提供的字符串數組函數

C++語言爲程序設計者提供了一些能夠很是方便地處理字符數組的函數。這些函數能夠完成字符數組的複製、鏈接、比較以及查找等操做。c++

在數組聲明時,C++會自動產生一個指向該數組第一個數據元素的指針。當使用數組的名字時,其實是在使用一個指向該數組的指針。數組


下面是一些C++中提供的字符串數組函數,給出了它們的原型和調用語句,這些函數的輸入都是一個字符指針(char*)。app


函數原型    void strcat(char *dest, char *src);函數

功能:將字符串src鏈接到字符串dest後面。spa

例子:設計

       char s1[30]="I love C++ ";指針

       char s2[10]="very much!";排序

       strcat(s1,s2);內存

       s1中的數據是「I love C++ very much」字符串


函數原型    void strcpy(char *dest, char *src);

功能:將字符串src複製到dest中。

例子:

       char s1[30];

       char s2[30]="I love C++ ";

       strcpy(s1,s2);

       s1中的數據是「I love C++ "


函數原型    int strcmp(char *s1,char *s2);

功能:比較s1和s2,若是相等則返回0,若是s1s2則返回正值。常常在用if和while語句中,或用於對單詞進行排序(按字母排序)

例子:

   char s1[15]="apple";

   char s2[15]="banana"

   if(strcmp(s1,"apple"))==0;    //檢查s1是否是apple

   if(strcmp(s1,s2)<0);        //但s1在字母表中位於s2以前時,返回true


函數原型    char *strstr(char*,char*);

功能:返回一個指向s1中第一次出現s2處的指針,若是s1中不含有s2,則返回NULL

例子:

   char s1[50]="the rain in spain is mainly on the plan.";

   char s2[10]="elephant";

   char s3[10]="rain";


   char *char_ptr;


   char_ptr=strstr(s1,s2);    //因爲s1中沒有elephant,char_ptr爲NULL

   char_ptr=strstr(s1,s3);    //char_ptr爲r在內存中的地址


函數原型    int strlen(char*)

功能:返回字符串的長度,不包括null字符

例子:

   int length;

   char s1[25]="i love c++!";

   length=strlen(s1);    //長度爲11


函數原型    char *strncpy(char *dest,char *src,int n)

功能:從src向dest複製字符

例子:

   char s1[10]="abcdef"

   strncpy(s1,"ABC",3);    //s1的值爲「ABCdef」

相關文章
相關標籤/搜索