首页 > 编程语言 > 详细

c++ 中字符串

时间:2020-04-08 23:45:09      阅读:82      评论:0      收藏:0      [点我收藏+]

c++ 中字符串 string

string.size()
string.erase()
operator:
[]:访问指定位置的字符串
=:赋值
+:连接
== / > ... :按字典序比较两个字符串
>>   <<   :string流的输入输出
getline() :从I/O流读取数据到字符串

技术分享图片

#include<iostream>
#include<algorithm>
#include<cstring> 
using namespace std;

string nums[23];    //string num[1]是一个字符串

bool cmp(const string &a,const string &b)
{
	return a+b>b+a;  
	//字符串自带 + >  
	/*
	自定义排序函数,这一步非常巧妙,假设a=321,b=32;a+b=32132,b+a=32321这样下面sort排下来就是32>321
	避免出现32132>32321的情况 
	
	*/ 
} 

int main()
{
	int n;
	cin>>n;
	
	for(int i=0;i<n;i++)
	{
		cin>>num[i];
	}
	
	sort(nums,nums+n,cmp);
	
	for(int i=0;i<n;i++)
	{
		cout<<nums[i];
	}
	cout<<endl;
	return 0;
}
/*
对这个cmp提供我自己的见解:
抛开这道题
如果要求从小到大排序
bool cmp(const string &a,const string &b)
{
    return a>b;
}
sort(a,a+n,cmp)         从a到a +n  这n个数,依次比较,当return 值为1时,a排在b前面
类比   当a+b  >  b+a  时,a排在b前面,类似的道理
*/

c++ 中字符串

原文:https://www.cnblogs.com/serendipity-my/p/12663716.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!