wchar_t这种宽字符型变量在打印的时候不能像下面那样直接打出来,
copy(wvec.begin(), wvec.end(), ostream_iterator<int>(cout, " "));// 这种打印出来的是数字
而需要设置地区
setlocale(LC_ALL, "chs");
for_each(wvec.begin(), wvec.end(), [](wchar_t w) {wprintf(L"%wc\t", w);});
单独打印一个宽字符型的话
wprintf(L"%wc\t",L'是');

#include <iostream>
#include <cstdlib>
#include <vector>
#include <deque>
#include <functional>
#include <algorithm>
#include <numeric>
#include <iostream>
#include <algorithm>
#include <string>
#include <ostream>using namespace std;vector<wchar_t> wvec;
deque<wchar_t> wdeq;template <typename T>
void wvecInsertData(T w) { wvec.push_back(w); }
template <typename T>
void wdeqInsertData(T w) { wdeq.push_back(w); }int main()
{setlocale(LC_ALL, "chs");const size_t sz = 8;wchar_t wc[][sz] = {{ L'你' ,L'是', L'我' ,L'的' ,L'半' ,L'截' ,L'的' ,L'诗' },{ L'那', L'是', L'绝' ,L'对' ,L'不', L'可', L'能', L'的' },{ L'半' ,L'截', L'我' ,L'是' ,L'用', L'心', L'爱', L'着' },{ L'半' ,L'截', L'是', L'用', L'肉', L'体', L'埋', L'着' }};for_each(wc[2], wc[2] + sz, wvecInsertData<wchar_t>);for_each(wc[0], wc[0] + sz, wvecInsertData<wchar_t>);for_each(wc[0], wc[0] + sz, wdeqInsertData<wchar_t>);for_each(wc[1], wc[1] + sz, wdeqInsertData<wchar_t>);for_each(wc[3], wc[3] + sz, wvecInsertData<wchar_t>);// 半截我是用心爱着你是我的半截的诗半截是用肉体埋着for_each(wvec.begin(), wvec.end(), [](wchar_t w) {wprintf(L"%wc", w); });cout << endl << endl << endl;// 你是我的半截的诗那是绝对不可能的for_each(wdeq.begin(), wdeq.end(), [](wchar_t w) {wprintf(L"%wc", w); });cout << endl << endl << endl;vector<wchar_t>::iterator iter1 = search(wvec.begin(), wvec.end(), wdeq.begin(), wdeq.begin() + sz);if (iter1 != wvec.end()){cout << "找到了,(从0)开始的位置是:" << distance(wvec.begin(), iter1) << endl;for_each(iter1, iter1 + sz, [](wchar_t w) {wprintf(L"%wc\t", w); });}else{cout << "没找到" << endl;}cout << endl << endl << endl;deque<wchar_t>::iterator iter2 = search(wdeq.begin(), wdeq.end(), wvec.begin() + sz, wvec.begin() + sz*2);if (iter2 != wdeq.end()){cout << "找到了,(从0)开始的位置是:" << distance(wdeq.begin(), iter2) << endl;for_each(iter2, iter2 + sz, [](wchar_t w) {wprintf(L"%wc\t", w); });}else{cout << "没找到" << endl;}return EXIT_SUCCESS;
}

C++STL算法 search你是我的半截的诗相关推荐

  1. C++STL算法 search 在圆周率中寻找特定排列

    在本例中string类也可以像数组一样使用下角标 #include <iostream> #include <cstdlib> #include <vector> ...

  2. 【C++】C++11 STL算法(一):非修改序列操作(Non-modifying sequence operations)

    目录 一.all_of.any_of.none_of: 1.官方说明 2.谓词 3.STL算法对谓词的说明 4.谓词的五种模式 5.all_of (C++ 11) 6.any_of (C++ 11) ...

  3. STL算法algorithm,

    2019独角兽企业重金招聘Python工程师标准>>> STL算法部分主要由头文件<algorithm>,<numeric>,<functional&g ...

  4. c++STL算法基础

    STL算法基础 算法概述 STL中算法分类 查找算法(13个) adjacent_find binary_search count count_if equal_range find find_end ...

  5. STL算法学习[转]

    原文:http://www.cppblog.com/mzty/archive/2007/03/14/19819.html STL算法学习,小结如下: 前提: 下载stl源码:  http://www. ...

  6. C++ 笔记(19)— 标准模板库(STL容器、STL迭代器、STL算法、STL容器特点、STL字符串类)

    C++ 标准库可以分为两部分: 标准函数库: 这个库是由通用的.独立的.不属于任何类的函数组成的.函数库继承自 C 语言. 面向对象类库: 这个库是类及其相关函数的集合. C++ 标准库包含了所有的 ...

  7. C++中的STL算法详解

    1.STL算法详解 STL提供能在各种容器中通用的算法(大约有70种),如插入.删除.查找.排序等.算法就是函数模板,算法通过迭代器来操纵容器中的元素.许多算法操作的是容器上的一个区间(也可以是整个容 ...

  8. 大顶堆删除最大值_C++|使用STL算法创建、调整、输出最大堆、最小堆

    最大堆(又叫大根堆.大顶堆)和最小堆是二叉堆的两种形式,一类很重要的数据结构,如用于堆排序等. 最小堆:根结点的键值是所有堆结点键值中最小者,且每个结点的值都比其孩子的值小. 最大堆:根结点的键值是所 ...

  9. C++语言基础 —— STL —— 算法

    [概述] STL 是指 C++ 标准模板库,是 C++ 语言标准中的重要组成部分,其以模板类和模版函数的形式提供了各种数据结构与算法的精巧实现,如果能充分使用 STL,可以在代码空间.执行时间.编码效 ...

最新文章

  1. flex制作swc文件
  2. Android开发之实现每隔一段时间触发定时器android定时器
  3. asp.net中,%#%,%=%和%%分别是什么意思,有什么区别
  4. 深入浅出看懂AlphaGo Zero - PaperWeekly 第51期
  5. self-attention的作用,理解
  6. 线性代数与电路学、信号与系统的关系、微分方程--学习笔记
  7. 一个貌似win窗口的载入框
  8. javascript高级编程(javascript高级编程第四版 pdf)
  9. f分布表完整图a=0.01_Matlab中的数据分析之概率分布与检验实例讲解
  10. STM32G070用HAL库与AT24C08通讯
  11. fpga驱动rgb液晶屏_[转载]基于FPGA的VGA驱动显示
  12. 听说你想学Python爬虫?我从零教你啊
  13. lv官网编码查询_老太太拿LV买菜装大葱!结果闺女被抓了......
  14. 在交通监控中使用基于计算机视觉的事故检测方案
  15. 分布式持久内存文件系统Octopus(ATC-17 )分析(二)
  16. Spring IOC源码解析笔记
  17. 使用R语言根据财务指标对上市公司进行聚类分析
  18. 个人Javaweb项目介绍
  19. RPGXP 使用手册
  20. 浩方vip帐号的试用方法(转贴)

热门文章

  1. 清除Internet临时文件
  2. 打印机服务器属性添加哪个文件,如何设置打印机服务器属性如何找到打印机服务器属性...
  3. datanlysis
  4. php 2038年,PHP 处理大于2038年以后的日期
  5. web前端需要学习什么?
  6. 联想小新增加固态硬盘后安装不了系统_固态硬盘装双系统不成功,装第二个系统时提示 windows没法完成安装,安装将在重启计算机后继续。...
  7. Excel合并单元格怎么分组排序?
  8. 金融、股票、投行的常见术语及一些简单区分
  9. VirtualBox安装macOS Big Sur
  10. 纯C语言实战-打字游戏