string在C和C++中的用法

简介: 代码为求输入的N多个字符串中有多少个不同字符! 由于以前对string类型不了解,因此犯了一个错误! strcmp函数的参数只适应于C中的字符串,而string 类型属于C++里面的一个类,因此,在用strcmp函数 来比较string类型的数据时,需将string类型转化成 C语言里面的类型,调用string.c_str()方法即可。

代码为求输入的N多个字符串中有多少个不同字符!

由于以前对string类型不了解,因此犯了一个错误!

strcmp函数的参数只适应于C中的字符串,而string

类型属于C++里面的一个类,因此,在用strcmp函数

来比较string类型的数据时,需将string类型转化成

C语言里面的类型,调用string.c_str()方法即可。

错误代码:

#include<iostream>
#include<string>
#include<cstring>
#include<set>
using namespace std;
int main()
{
	string aa;
	set< string >a;
	while()
	{
		cin>>aa;
		if(strcmp(aa,"#")==0)
			break;
		else
			a.insert(aa);	
	}
	cout<<a.size()<<endl;
}


 

改正代码

#include<iostream>
#include<string>
#include<cstring>
#include<set>
using namespace std;
int main()
{
	string aa;
	set< string >a;
	while()
	{
		cin>>aa;
		if(strcmp(aa.c_str(),"#")==0)
			break;
		else
			a.insert(aa);	
	}
	cout<<a.size()<<endl;
}


 

目录
相关文章
|
27天前
|
存储 C++ 容器
C++入门指南:string类文档详细解析(非常经典,建议收藏)
C++入门指南:string类文档详细解析(非常经典,建议收藏)
34 0
|
30天前
|
存储 算法 编译器
【C++ TypeName用法 】掌握C++中的TypeName:模板编程的瑞士军刀
【C++ TypeName用法 】掌握C++中的TypeName:模板编程的瑞士军刀
237 0
|
27天前
|
存储 编译器 C语言
C++_String增删查改模拟实现
C++_String增删查改模拟实现
46 0
|
5天前
|
存储 安全 C语言
【C++】string类
【C++】string类
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
|
7天前
|
编译器 C++
标准库中的string类(上)——“C++”
标准库中的string类(上)——“C++”
|
17天前
|
存储 算法 C语言
【C++初阶】8. STL初阶 + String类
【C++初阶】8. STL初阶 + String类
48 1
|
17天前
|
C语言 C++
【C++初阶】9. string类的模拟实现
【C++初阶】9. string类的模拟实现
38 1
|
22天前
|
人工智能 安全 机器人
【C++】const_cast基本用法(详细讲解)
【C++】const_cast基本用法(详细讲解)
|
22天前
|
人工智能 机器人 中间件
【C++】C++回调函数基本用法(详细讲解)
【C++】C++回调函数基本用法(详细讲解)