Advertisement

C++ 处理和解析字符串数据 C++ 处理和解析字符串数据

阅读量:

在C++编程语言中,可以借助cin对象实现字符串的读取操作,但若每次仅读取单个单词则并非最优方案。例如,当程序需要获取城市名称时,用户输入"New York",期望程序能够完整读取该城市名而非仅仅一个单词。为解决这一问题,C++提供了两个面向行的类成员函数:getline()与get()。这两种函数均可读取整行输入内容,直至遇到换行符为止。不过,在处理换行符时二者存在差异:getline()会将换行符从输入流中移除,而get()则会保留该换行符。

1. 面向行的输入:getline()

getline()函数用于读取整行文本,并通过用户按下回车键所产生的换行符作为输入结束的标志。要使用该方法,可调用cin.getline()。此函数包含两个参数:第一个参数用于指定存储输入字符串的数组名称,第二个参数表示希望读取的最大字符数量。当达到预设字符数或检测到换行符时,getline()成员函数将停止读取操作。

如果需要将姓名信息存入一个包含20个元素的name数组中,可通过如下方式调用getline()函数:

复制代码
    cin.getline(name,20);
    

这将把一行内容读取至name数组中——前提是该行所包含的字符数量不超过19个。

2. 面向行的输入:get()

此外还存在另一种方式,istream类中包含一个名为get(

全部评论 (0)

还没有任何评论哟~