C语言与C++字符串对比

1.源代码

#include
#include
using namespace std;
string xingming[50],xuehao[50];//定义字符串数组 
void f1(int n);// 信息录入函数
void f2(string ming,int n);//查找学生信息信息函数 
int main()
{
    int n;
    string ming;//存放要查找学生的姓名 
    cout<<"请输入要录入信息的学生的个数:";
    cin>>n;
    f1(n);
    cout<<endl<<"请输入要查找学生的姓名:";
    cin>>ming;
    cout<<"查找结果:"<<endl;
    f2(ming,n);
    system("pause");
    return 0;    
}
void f1(int n)// 信息录入函数
{
     int i;
     cout<<endl<<"开始录入学生信息"<<endl;
     for(i=0;i
     {
         cout<<"请输入第"<<i+1<<"个学生的信息"<<endl;
         cout<<"姓名:";
         cin>>xingming[i];
         cout<<"学号:";
         cin>>xuehao[i];                                                
     }
}
void f2(string ming,int n)//查找学生信息信息函数
{
   int i;
   bool zhi=false;
   for(i=0;i
   {
     if(xingming[i]==ming)              
     {
        cout<<"该学生的信息如下:"<<endl;                                
        cout<<"姓名:"<<xingming[i]<<endl;
        cout<<"学号:"<<xuehao[i]<<endl;
        zhi=true;
        break;                                
     }              
   }
   if(zhi==false)
   {
      cout<<"本班无此人"<<endl;              
   }           
}

2.运行结果截图

C语言与C++字符串对比_第1张图片

3.总结与分析

分析对比:
c++对字符串处理更加,高效,安全,方便
1.安全性:
使用C++字符串变量输入字符串时,不用像C语言那样担心输入的字符串长度超过已经定义的字符型数组长度,若使用C语言输入字符串时输入的字符串长度超过定义的字符数组长度,则程序在运行时会异常,使用用C++字符串变量输入字符串时可以输入任意长度的字符串,(例:string a;cout< 2.高效性,方便性:
使用C++字符串变量时不必像C语言一样在定义字符数组时提前计划后边输入字符串所需要的长度,定义时方便简单,像定义其它变量一样。C语言对字符串进行复制,链接,比较等处理时需要用到专门的函数。而C++却不需要专门的函数。
字符串链接:C语言要用到sring函数,例:char a[20]=“china”;char b[10]=“nanyang”;strcat(a,b);//将b字符串连接到a字符串之后,C++可以直接使两个字符串变量相加例string a=“china”;string b=“nanyang”;a=a+b;
字符串复制:C语言要用到strcpy函数,例:char a[20]=“china”;char b[10]=“nanyang”;strcpy(a,b);//把b字符串中的字符复制到a字符串中。C++可以像变量赋值那样把b的字符串付给a:string a=“china”;string b=“nanyang”;a=b;
字符串比较:C语言比较两个字符串时要用到strcmp函数,这个函数返回值是一个整数,例:char a[20]=“china”;char b[10]=“nanyang”;strcmp(a,b);//若a>b则返回一个正整数,若ab);c++对字符串的处理方法更像对正行变量的处理方法,容易理解,出错率小,写出的代码也容易读懂。

你可能感兴趣的:(C语言与C++字符串对比)