C++:比较C风格字符串

资料:C++中处理C风格字符串

在C++语言中,除了继承了C语言中的这种字符串表达形式外,还新添了string类用来表达字符串。就表义来说,这两种字符串存储方式是等价的,但在处理的过程中却有显著的区别。在string类中,所有的对字符串的操作都被封装为成员函数,因此只要string内部有统一的约定,可以不在使用’\0’作为结尾标志。但对于C语言中的字符串,所有的操作都是来源于中的以str开头的函数,这些函数的特点就是都以’\0’作为所处理的字符串的结尾标志。

由于这些显著的特点,为了区分C++中这两种不同的字符串,使用“C风格字符串”来特指来源于C语言的字符串存储方式。[更多]

问题

利用list和vector保存C风格字符串,并比较两个容器是否相等.

C++.
image-2086

源代码


/*************************************************************************
> File Name: test.10.5.cpp
> Author: puruidong
> Mail: 1@w1520.com
> Created Time: 2014年06月05日
************************************************************************/

#include
#include
#include #include
using namespace std;

/*

利用list和vector保存C风格字符串,并比较两个容器是否相等.

*/

int main()
{

vector ve;
ve.push_back('a');
ve.push_back('b');
ve.push_back('c');
ve.push_back('k');//不相等的元素,改成d即返回相等.
ve.push_back(0);
list l;
l.push_back('a');
l.push_back('b');
l.push_back('c');
l.push_back('d');
l.push_back(0);
auto result = equal(ve.cbegin(),ve.cend(),l.cbegin());
cout << "两个容器的比较结果是:" << result << endl; return 0; }

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据