C++STL算法 adjacent_find计算字符串的长度倍数时防止除零错误
注意放入容器中的字符串的长度不要过长,在VS中会出现C2026的error
在判断一个字符串长度是另一个字符串长度的整数倍时要避免除零错误,可以使用乘法
对比下面的代码,第一种会避免除零错误
[](string s1, string s2)->bool {return s1.size() * 2 == s2.size(); }
[](string s1,string s2)->bool{return (double)s2.size()/s1.size()==2;}
- 还需要注意一点的是在除法中两个int的结果是整除,对比5/2=2,5/2.0=2.5
#include <iostream>
#include <algorithm>
#include <deque>
#include <string>
#include <iterator>using namespace std;
// 寻找后一个字符串是前一个字符串长度的2倍的元素
int main() {deque<string> sdeq;sdeq.push_back("Hello");sdeq.push_back("Hello World");sdeq.push_back("Hello");sdeq.push_back("Hello World!");sdeq.push_back("Hello");sdeq.push_back("HelloWorld");sdeq.push_back("Hello");sdeq.push_back("Hello World!");//sdeq.push_front("");//sdeq.push_front("");for (deque<string>::const_iterator iter = sdeq.begin(); iter != sdeq.end(); ++iter){cout << *iter << endl;}deque<string>::iterator pos = adjacent_find(sdeq.begin(), sdeq.end(), [](string s1, string s2)->bool {return s1.size() * 2 == s2.size(); });//vector<string>::iterator pos=adjacent_find(svec.begin(),svec.end(),[](string s1,string s2)->bool{return (double)s2.size()/s1.size()==2;});if (pos != sdeq.end()){cout << endl << "找到了后一个字符串长度是前一个字符串2倍的元素" << endl;cout << "位置在:" << distance(sdeq.begin(), pos) << endl;cout << *pos++ << "\t";cout << *pos << endl;}else{cout << "没有找到" << endl;}return EXIT_SUCCESS;
}
C++STL算法 adjacent_find计算字符串的长度倍数时防止除零错误相关推荐
- 计算字符串的长度(一个汉字算两个字符)
/**/ /// <summary> /// 计算字符串的长度(一个汉字算两个字符) /// </summary> /// &l ...
- JS实现计算字符串字节长度
JS计算字符串字节长度 String.prototype.byteLength = function() {var count = 0;for(var i=0,l=this.length;i<l ...
- R语言str_length函数计算字符串的长度
R语言str_length函数计算字符串的长度 目录 R语言str_length函数计算字符串的长度 #导入包和库 #仿真数据
- 四种方法计算字符串的长度
在这里我提供四种方法计算字符串的长度: 1.使用递归函数. 2.数数,从第一个字符开始数数,没遇到一个字符,长度加一,直到遇到"\0",停止数数. 3.使用strlen函数,使用此 ...
- 站长在线python精讲:在Python中使用len()函数计算字符串的长度详解
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python中使用len()函数计算字符串的长度详解>.本知识点主要内容有:在Python中使用len()函数计算字符串在 ...
- PHP:计算字符串中汉字的个数、正确计算字符串的长度
也许很多phper不知道,PHP内置的字符串长度函数strlen()无法正确处理中文字符串,它得到的只是字符串所占的字节数.对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UT ...
- 指针:自定义函数length,调用它计算字符串的长度
Description 自定义一个函数int length(char *s),函数返回字符串s的长度.在main函数中输入字符串(长度小于80),调用该函数并输出其长度 Input 多组测试数据,每组 ...
- C语言计算字符串的长度
一.循环实现 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> int my_strlen(char *pstr) {int num ...
- Problem C: 指针:自定义函数length,调用它计算字符串的长度
#include<stdio.h> int length(char*s) {int i,count;while(*s!='\0'){*(s++);count++;}return count ...
最新文章
- 使用IST重新加入节点(5.7.20)
- 使用AheadLib生成DLL劫持代码
- iphone静音键失灵_知否 | 为何大部分安卓机 都不学iPhone加入静音键?
- c++ 获取当前时间_ThinkPHP6中获取参数的3种常用方法【总结】
- 密码学研究-加密解密
- linux xargs命令_如何在Linux中使用xargs命令?
- 36家健康类公益组织联名举报百度
- python读、写、修改、追写excel文件(xlrd / xlwt / xlutils / openpyxl)
- Linux下安装JDK并配置环境变量
- U盘无法格式化--量产工具成功救活
- MyBatisPlus之逻辑删除
- taobao.trades.sold.increment.get( 淘宝店铺订单交易数据接口,淘宝店铺订单解密接口,淘宝店铺订单解密提额接口)代码对接教程
- ps,ai,cdr平面设计教程,全套!基础到精通,小编亲看教程,推荐!
- 有一些C++基础的同学们如何喝下你的第一杯咖啡?
- 阿里云建站的基本流程
- NOIP训练 czy的后宫5(树形dp)
- 拼多多登录一直连接服务器,拼多多有自己的服务器吗
- 深度暗色调色效果Lr预设
- 全新小旋风万能蜘蛛池9.02开心版/站长必备SEO+带教程
- 计算机相关装备有哪些,DNF装备搭配计算器_官方网站_17173DNF专区_17173.com中国游戏门户站...