字符串处理(库函数)

sscanf()

#include<cstdio>

从一个字符串中读进与指定格式相符的数据
学习资料分享:字符串处理时候的读入指定数据

经常碰到一串固定格式字符串中有需要处理的数据,比如foj1146这样的0:23:21 -:–:–

sscanf(s.c_str(),"%d:%d:%d",&hh,&mm,&ss);


sprintf()

#include<cstdio>

把格式化的数据写入某个字符串。

int num;
char s[1000];
sprintf(s,"%d",num);

reserve()

#include<string>

翻转字符串
超方便 比如foj1171 分分钟秒

reverse(s.begin(),s.end());

string s转char c[]

strcpy(c,s.c_str());

char c[] 转 string s

s = c;


next_permutation()

#include<algorithm>

比当前char型数组排序大的下一种排序

next_permutation(c,c+strlen(c));

c[]=”abcd”变为 abdc


memset()

#include<cstring>

对于对int之类的数组,只能用memset对其初始化为0或-1。

如:int a[]; memset(a,0,sizeof(a));

而对于char型,可以赋任何字符。

如:char a[]; memset(a,'0',sizeof(a));

fill()

#include<iostream>

把那一块单元赋成指定的值

 char s[100];  
 fill(s,s+100,'a');  

如果用memset给d[100]赋值1会出事 这时候就应用fill函数

int  d[100];  
fill(d,d+100,1);  

getline()

#include<string>

很常用的一个函数。

string s;
getline(cin,s);

默认是换行为分隔符。
也可以用其他字符作为分隔符,如用空格作为分隔符。

string s;
getline(cin,s,' ');

find()

#include<string>

找到则返回第一个字符的索引
没找到则返回 string::npos

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值