博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ Primer Plus 学习笔记 第十六章 string类
阅读量:4127 次
发布时间:2019-05-25

本文共 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/

你可能感兴趣的文章
Linux分区方案
查看>>
如何使用 systemd 中的定时器
查看>>
git命令速查表
查看>>
linux进程监控和自动重启的简单实现
查看>>
OpenFeign学习(三):OpenFeign配置生成代理对象
查看>>
OpenFeign学习(四):OpenFeign的方法同步请求执行
查看>>
OpenFeign学习(五):OpenFeign请求结果处理及重试控制
查看>>
OpenFeign学习(六):OpenFign进行表单提交参数或传输文件
查看>>
Ribbon 学习(二):Spring Cloud Ribbon 加载配置原理
查看>>
Ribbon 学习(三):RestTemplate 请求负载流程解析
查看>>
深入理解HashMap
查看>>
XML生成(一):DOM生成XML
查看>>
XML生成(三):JDOM生成
查看>>
Ubuntu Could not open lock file /var/lib/dpkg/lock - open (13:Permission denied)
查看>>
collect2: ld returned 1 exit status
查看>>
C#入门
查看>>
C#中ColorDialog需点两次确定才会退出的问题
查看>>
数据库
查看>>
nginx反代 499 502 bad gateway 和timeout
查看>>
linux虚拟机安装tar.gz版jdk步骤详解
查看>>