<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 1,  comments - 0,  trackbacks - 0
    點(diǎn)睛之筆:使用STL的最高境界就是程式看不到for和while loop,完全用STL 的algorithm搞定。
    下例中我們需要將vector中的所有字符串變成小寫,使用transfor()對vector中的每個(gè)string元素做處理,C\C++的字符串沒有提供轉(zhuǎn)寫小寫的功能,但是C中有對每個(gè)字符轉(zhuǎn)寫小寫的功能。猶豫string也是個(gè)container,我們需要再次使用transform()來處理每個(gè)字符,并且使用<cctype>中的tolower()將每個(gè)字符改成小寫。
    09  #include <iostream>
    10#include <cctype>
    11#include <algorithm>
    12#include <vector>
    13#include <string>
    14
    15using namespace std;
    16
    17string& toLower(string&);
    18
    19int main() {
    20  vector<string> svec;
    21  svec.push_back("Stanley B. Lippman");
    22  svec.push_back("Scott Meyers");
    23  svec.push_back("Nicolai M. Josuttis");
    24
    25  // Modify each string element
    26  transform(svec.begin(), svec.end(), svec.begin(), toLower);
    27  
    28  copy(svec.begin(),svec.end(), ostream_iterator<string>(cout,"\n"));
    29
    30  return 0;
    31}

    32
    33string& toLower(string& s) {
    34  // Modify each char element
    35  transform(s.begin(), s.end(), s.begin(), tolower);
    36  return s;
    37}
    補(bǔ)充:transform是遍歷一個(gè)容器里面的元素然后執(zhí)行一個(gè)操作。
            參數(shù)1和參數(shù)2是數(shù)據(jù)起始和結(jié)束位置(迭代器,也可以是string)
            如:string s="hello"; transform(s.begin(),s.end(),s.begin(),toupper);
            參數(shù)3是寫入目標(biāo)的起始位置;
            參數(shù)4是執(zhí)行的操作(函數(shù))。
    思想2:

    實(shí)例:#include<iostream>
            using namespace std;
            int my_toupper(int ch)
             {
                  if(ch>='a'&&ch<='z')
                   {
                       return ch-(int('a')-int('A'));
                   }
                  else
                   {
                       return ch;
                   }
              }
            int my_tolower(int ch)
             {
                  if(ch>='A'&&ch<='Z')
                   {
                       return ch+(int('a')-int('A'));
                   }
                  else
                   {
                       return ch;
                   }
              }


            int main()
            {
               char buf[]="abc123ABC";
               char *p=buf;
               while(*p!='\0')
               {
                  cout<<(char)my_toupper(*p)
                        <<","
                        <<(char)my_tolower(*p)
                        <<endl;
                  ++p;
              }
            return 0;
          }
    思路3:














    posted on 2012-04-06 09:14 憤怒的考拉 閱讀(312) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿

    隨筆檔案

    文章檔案

    搜索

    •  

    最新評論

    主站蜘蛛池模板: 亚洲精品无码永久在线观看| 四虎精品视频在线永久免费观看| 好吊妞在线新免费视频| 亚洲女人影院想要爱| 最近中文字幕mv免费高清视频8| 亚洲人成人一区二区三区| 啊v在线免费观看| 亚洲av无码av在线播放| 久久免费动漫品精老司机| 亚洲级αV无码毛片久久精品| 黄色网页在线免费观看| 国产精品国产亚洲精品看不卡| 免费91最新地址永久入口 | 99re在线视频免费观看| 亚洲综合精品一二三区在线| 114级毛片免费观看| 亚洲国产91在线| 免费国产成人高清视频网站 | 成人无码区免费A∨直播| 成人免费看片又大又黄| 亚洲jizzjizz少妇| 无码国产亚洲日韩国精品视频一区二区三区| 亚洲国产无线乱码在线观看| 亚洲成av人片在线观看天堂无码 | 中文字幕乱码免费看电影| 亚洲gv猛男gv无码男同短文| 久久ww精品w免费人成| 亚洲一本一道一区二区三区| 亚洲?V无码成人精品区日韩 | aa级毛片毛片免费观看久| 久久综合图区亚洲综合图区| 久久久久久久免费视频| 国产精品亚洲专区无码牛牛| 久久久久亚洲精品天堂久久久久久 | 8x成人永久免费视频| 亚洲影院天堂中文av色| 国产亚洲精品免费视频播放| 18禁黄网站禁片免费观看不卡| 亚洲爆乳无码专区www| 亚洲av午夜成人片精品网站 | 插B内射18免费视频|