本文共 1569 字,大约阅读时间需要 5 分钟。
string类的构造函数
构造函数程序示例:
#include#include int main(){ using namespace std; string one("Lottery Winner!"); cout << one << endl; string two(20, '$'); cout << two << endl; string three(one); cout << three << endl; one += " Oops!"; cout << one << endl; two = "Sorry! That was "; three[0] = 'P'; string four; four = two + three; cout << four << endl; char alls[] = "All's well that ends well"; string five(alls, 20); cout << five << "!\n"; string six(alls + 6, alls + 10); cout << six << ", "; string seven(&five[6], &five[10]); cout << seven << "...\n"; string eight(four, 7, 16); cout << eight << " in motion!" << endl; return 0;}
string类输入:
C-风格的字符串输入:
char info[100];
cin >> info;
cin.getline(info, 100);
cin.get(info, 100);
对于string对象:
string stuff;
cin >> stuff;
getline(cin, stuff);
指定边界:
c-string: cin.getline(info, 100, ':');
getline(stuff, ':')
string的getline自动调整大小。而c-风格的不行
string对象的最大长度是由string::npos指定的,通常是unsigned int值
string的 operator>>()
文件读取示例:
#include#include #include #include int main(){ using namespace std; ifstream fin; fin.open("tobuy.txt"); if (fin.is_open() == false) { cerr << "Can't open file. Bye.\n"; exit(EXIT_FAILURE); } string item; int count = 0; getline(fin, item, ':'); while (fin) { ++count; cout << count << ": " << item << endl; getline(fin, item, ':'); } cout << "Done\n"; fin.close(); return 0;}
tobuy.txt:
sardines:chocolate ice cream:pop corn:leeks:cottage cheese:olive oil:butter:tofu:
输出结果
先完结
转载地址:http://niepi.baihongyu.com/