C++之string

 1 #include <iostream>
 2 #include<string>
 3 
 4 using  namespace std;
27 int main(){
28 
29     //C++标准库中的string类型
30     string name("张三");
31     cout<<name<<endl;
32     //定义初始化方法
33     string s1;
34     string s2("李四");
35     string s3(s2);
36     string s4(10,'a');
37     cout<<s1<<endl;
38     cout<<s2<<endl;
39     cout<<s3<<endl;
40     cout<<s4<<endl;
41     //读入字符串并输出
42     string s;
43     cin>>s; //读取到第一个空格就停止了 只能读一部分 有效字符之前如果有空格也会读进来然后扔掉
44     cout<<s<<endl;
45     读取一整行 用getline方法
46     string ss;
47     getline(cin,ss);
48     cout<<ss<<endl;
49 
50     //循环每次读一行 ,getline方法是遇到换行符停止
51     string line;
52     while(getline(cin,line))
53     {
54         cout<<line<<endl;
55     }
56 
57     //每次读一个单词
58     string word;
59     while(cin>>word)
60     {
61         cout<<word<<endl;
62     }
63     return 0;
64 }
 1 //查看字符串的大小 size方法
 2     string st("hello");
 3     //C++中使用size_type类型专门保存字符串大小
 4     string::size_type size1=st.size();
 5     cout<<size1<<endl;
 6     if(st.empty())
 7     {
 8         cout<<"这是一个空字符串"<<endl;
 9     }else{
10         cout<<"这是一个非空字符串"<<endl;
11     }
12 
13     //比较大小 汉字通过拼音比较
14     string s1("张飞");
15     string s2("刘备");
16     if(s1==s2)
17     {
18          cout<<"张飞和刘备相等"<<endl;
19     }
20     if(s1>s2)
21     {
22          cout<<"张飞比刘备大"<<endl;
23     }else{
24          cout<<"张飞比刘备小"<<endl;
25     }
26 
27     //两个字符串相加 连接操作
28     string ss1("hello,");
29     string ss2("world\n");
30     string ss3=ss1+ss2;
31     ss1+=ss2;
32     cout<<ss3<<endl;
33     cout<<ss1<<endl;
34     //字符串和字符串字面值连接的时候必须有一个string类型的值 加好两边不能全是string的字面值
35     string ss5=ss1+"nihao";
36     cout<<ss5<<endl;
 1 #include <iostream>
 2 #include<string>
 3 //c语言中的头文件前加C 可以在c++中使用
 4 #include<cctype>
 5 
 6 using  namespace std;
 7 
 8 int main(){
 9     string str("hello");
10     cout<<str[0]<<endl;
11 
12     for(string::size_type i=0;i!=str.size();i++)
13     {
14         cout<<str[i]<<endl;
15     }
16 
17     for(string::size_type i=2;i!=str.size();i++)
18     {
19         str[i]='*';
20     }
21     cout<<str<<endl;
22 
23 
24     //string 中的字符处理
25     string s("hello!!!");
26     string::size_type count1=0;
27     for(string::size_type i=0;i!=s.size();i++)
28     {
29         //ispunct方法检测字符串中是否有标点符号
30         //isanum()
31         if(ispunct(s[i]))
32             ++count1;
33     }
34     cout<<count1<<endl;
35     //输入字符串把标点符号去掉
36     string y,result;
37     char ch;
38     bool has=false;
39     getline(cin,y);
40     for(string::size_type index=0;index!=y.size();index++)
41     {
42         ch=y[index];
43         if(ispunct(ch))
44         {
45             has=true;
46         }else{
47             result+=ch;
48         }
49     }
50     if(has)
51     {
52         cout<<result<<endl;
53     }else{
54         cout<<"没有标点符号"<<endl;
55     }
56 
57 
58     return 0;
59 }

 

posted @ 2020-03-18 10:29  萌萌~  阅读(150)  评论(0编辑  收藏  举报