⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 string1.cpp

📁 stl自带源码
💻 CPP
字号:
/* The following code example is taken from the book * "The C++ Standard Library - A Tutorial and Reference" * by Nicolai M. Josuttis, Addison-Wesley, 1999 * * (C) Copyright Nicolai M. Josuttis 1999. * Permission to copy, use, modify, sell and distribute this software * is granted provided this copyright notice appears in all copies. * This software is provided "as is" without express or implied * warranty, and with no claim as to its suitability for any purpose. */#include <iostream>#include <string>using namespace std;int main (int argc, char* argv[]){    string filename, basename, extname, tmpname;    const string suffix("tmp");    /* for each command-line argument     * (which is an ordinary C-string)     */    for (int i=1; i<argc; ++i) {        // process argument as file name        filename = argv[i];                // search period in file name        string::size_type idx = filename.find('.');        if (idx == string::npos) {            // file name does not contain any period            tmpname = filename + '.' + suffix;        }        else {            /* split file name into base name and extension             * - base name contains all characters before the period             * - extension contains all characters after the period             */            basename = filename.substr(0, idx);            extname = filename.substr(idx+1);            if (extname.empty()) {                // contains period but no extension: append tmp                tmpname = filename;                tmpname += suffix;            }            else if (extname == suffix) {                // replace extension tmp with xxx                tmpname = filename;                tmpname.replace (idx+1, extname.size(), "xxx");            }            else {                // replace any extension with tmp                tmpname = filename;                tmpname.replace (idx+1, string::npos, suffix);            }        }        // print file name and temporary name        cout << filename << " => " << tmpname << endl;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -