string
string 应该是 最常用是STL容器了吧
#include <string> #include <iostream> #include <cstdio> using namespace std; string s; signed main() { getline(cin,s); cin>>s; scanf("%s",&s); int len=s.length();//int len=s.size(); for(register int i=0; i<=len-1 ; i++) putchar(s[i]); //putchar 优化 切记 string的第一个字符在下标0 puts("");//换行 // cout<<s<<endl; //这样也是可以的 // printf("%s\n",s) //一样的 return 0; //int capacity()const; //返回当前容量(即string中不必增加内存即可存放的元素个数) //int max_size()const; //返回string对象中可存放的最大字符串的长度 //int size()const; //返回当前字符串的大小 //int length()const; //返回当前字符串的长度 //bool empty()const; //当前字符串是否为空 //void resize(int len,char c); //把字符串当前大小置为len,多去少补,多出的字符c填充不足的部分 //string &insert(int p,const string &s); //在p位置插入字符串s //string &replace(int p, int n,const char *s); //删除从p开始的n个字符,然后在p处插入串s //string &erase(int p, int n); //删除p开始的n个字符,返回修改后的字符串 //string substr(int pos = 0,int n = npos) const; //返回pos开始的n个字符组成的字符串 //void swap(string &s2); //交换当前字符串与s2的值 //string &append(const char *s); //把字符串s连接到当前字符串结尾 //void push_back(char c) //当前字符串尾部加一个字符c //const char *data()const; //返回一个非null终止的c字符数组,data():与c_str()类似,用于string转const char*其中它返回的数组是不以空字符终止, //const char *c_str()const; //返回一个以null终止的c字符串,即c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同,用于string转const char* //size_type find( const basic_string &str, size_type index ); //返回str在字符串中第一次出现的位置(从index开始查找),如果没找到则返回string::npos //size_type find( const char *str, size_type index ); // 同上 //size_type find( const char *str, size_type index, size_type length ); //返回str在字符串中第一次出现的位置(从index开始查找,长度为length),如果没找到就返回string::npos //size_type find( char ch, size_type index ); // 返回字符ch在字符串中第一次出现的位置(从index开始查找),如果没找到就返回string::npos }
不存在十全十美的文章 如同不存在彻头彻尾的绝望