• 摘抄书上一个逆序字符串的例子(可根据不同的符号,比如*&,.;来拆分单词)


    今天看书,看到这个例子感觉不错。抄下来,兴许以后能用上。

    先给个例子吧:

    随意的一个字符串,比如pots * pans,本程序会输出stop * snap

    下面给出代码,大家可以根据自己的需要来更改。

     1 // StandLibP476.cpp : 定义控制台应用程序的入口点。
    2 //
    3
    4 #include "stdafx.h"
    5 #include <iostream>
    6 #include <string>
    7
    8 using namespace std;
    9
    10 int _tmain(int argc, _TCHAR* argv[])
    11 {
    12 const string delims( " \t,.;" ); //拆分单词的标记
    13 string line;
    14
    15 while ( getline(cin,line) ) {
    16 string::size_type begIdx, endIdx;
    17
    18 begIdx = line.find_first_not_of( delims );
    19
    20 while ( begIdx != string::npos ) {
    21
    22 endIdx = line.find_first_of( delims, begIdx );
    23
    24 if ( endIdx == string::npos ) { //只有一个单词,固把endIdx赋值为整个字符串的结尾
    25 endIdx = line.length();
    26 }
    27
    28 for ( int i = endIdx - 1; i >= static_cast<int> (begIdx); --i ) {
    29 cout << line[i];
    30 }
    31 cout << ' ';
    32 begIdx = line.find_first_not_of( delims, endIdx );
    33 }
    34 cout << endl;
    35 }
    36
    37 return 0;
    38 }


    代码摘自C++ 标准程序库P476,哪位有好的方法欢迎交流。

  • 相关阅读:
    2020/3/12
    练习题1
    2020/3/26
    2020/3/25
    2020/3/24
    2020/3/23
    应用层
    bzoj3326[SCOI2013]数数
    HEOI2017游记
    bzoj4417[SHOI2013]超级跳马
  • 原文地址:https://www.cnblogs.com/ziyoudefeng/p/2432238.html
Copyright © 2020-2023  润新知