C++ string类基本用法样例

来源:岁月联盟 编辑:exp 时间:2012-05-07

#define _CRT_SECURE_NO_DEPRECATE 
#include <string>    //  使用 string 类时须包含这个文件 
#include <iostream> 
 
using namespace std; 
 
int main() 

    string str1; 
 
    //  输入与输出 
    cout << "输入字符串 str1" << endl; 
    cin >> str1;  
    getchar(); 
    cout << str1 << endl << endl << endl; 
 
    //  一行行读取  
    cout << "输入字符串 str1" << endl; 
    getline( cin, str1 ); 
    cout << str1 << endl; 
 
    //  与c字符转换 
    string str2("Hello World!"), str3; 
    char   str4[50]; 
 
    cout << "输入 C 字符串" << endl; 
    scanf("%s", str4); 
    str3= str4; 
 
    cout << "str2 is " << str2 << endl; 
    cout << "str3 is " << str3 << endl << endl << endl; 
 
    //  求字符串的长度 
    string str5; 
    cout << "输入字符串 str5" << endl; 
    cin >> str5; 
    int   len= str5.size(); 
    cout << "字符串 str5的长度为" << len << endl << endl << endl; 
 
    //  遍历字符串例子 
    string str6; 
    cout << "输入字符串 str6" << endl; 
    cin >> str6; 
    int i; 
    for( i= 0; i< str6.size(); ++i ) 
        cout << str6[i]; 
    cout << endl << endl; 
 
    //  比较两个字符串 比较规则同 c字符串比较规则 
    string str7, str8; 
    cout << "输入字符串 str7, str8 , 中间用空格格开" << endl; 
    cin >> str7 >> str8; 
 
    if( str7< str8 ) cout << str7 << "  小于 " << str8 << endl; 
    else if( str7> str8 ) cout << str7 << "  大于 " << str8 << endl; 
    else cout << str7 << "  等于 " << str8 << endl; 
 
    //  字符串与字符相加  
    string str9= "Darren"; 
    char ch1= 'a', ch2= 'b'; 
    str9= str9+ ch1; cout << str9 << endl << endl; 
    str9= ch2+ str9; cout << str9 << endl << endl << endl; 
 
    //  字符串与字符串相加 
    string str10= "Acm", str11= "ICPC"; 
    str10.append( str11 ); 
    cout << str10 << endl << endl; 
 
    //  字符串是否包含子串  如果包含 则返回子串在目标串中第一次出现的位置  
    string str12= "I am a student", str13= "student", str14= "aaaaaaa"; 
    if( str12.find( str13 )!= -1 )  cout << "Find " << str13 << endl; 
    if( str12.find( str14 )== -1 )  cout << "Not Find  " << str14 << endl; 
 
    //  转换成 c_字符串 
    string str15= "Hello World"; 
    printf("%s/n", str15.c_str() ); 
 
    system("pause");  
 
    return 0; 

 


摘自 小伟专栏