码迷,mamicode.com
首页 > 编程语言 > 详细

C++中提供的字符串数组函数

时间:2015-09-23 15:15:09      阅读:245      评论:0      收藏:0      [点我收藏+]

标签:

C++语言为程序设计者提供了一些可以非常方便地处理字符数组的函数。这些函数可以完成字符数组的复制、连接、比较以及查找等操作。

在数组声明时,C++会自动产生一个指向该数组第一个数据元素的指针。当使用数组的名字时,实际上是在使用一个指向该数组的指针。


下面是一些C++中提供的字符串数组函数,给出了它们的原型和调用语句,这些函数的输入都是一个字符指针(char*)。


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

功能:将字符串src连接到字符串dest后面。

例子:

       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”


C++中提供的字符串数组函数

标签:

原文地址:http://my.oschina.net/u/2408025/blog/510047

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!