龙空技术网

C/C++编程笔记:C++的stringstream及其应用

C语言编程 137

前言:

此时咱们对“c语言字符串追加”大概比较注意,咱们都需要剖析一些“c语言字符串追加”的相关文章。那么小编也在网上网罗了一些关于“c语言字符串追加””的相关资讯,希望小伙伴们能喜欢,我们一起来学习一下吧!

stringstream将字符串对象与流相关联,使您可以像从流中读取字符串一样(例如cin)。

基本方法是–

clear()—清除流

str()—获取并设置其内容存在于流中的字符串对象。

运算符<< —将字符串添加到stringstream对象。

运算符>> —从stringstream对象中读取内容,

stringstream类在解析输入时非常有用。

应用范围:

1.计算字符串中的单词数

输出:

字数是:6

2、打印字符串中单个单词的频率

3、给定的字符串中删除空格

给定字符串,请删除字符串中的所有空格并返回。

例:输入:C语言 C++;输出:C语言C++

预期的时间复杂度为O(n),并且只有一个字符串遍历。

1)遍历给定字符串的所有字符,请执行以下操作

a)如果当前字符是空格,则移动所有后续字符 字符返回一个位置并减小其长度 结果字符串。

上述解决方案的时间复杂度为O(n 2)。

更好的解决方案可以在O(n)的时间解决这个问题。这个想法是跟踪到目前为止所看到的非空格字符的计数。

1)初始化'count'= 0(到目前为止看到的非空格字符的计数)

2)遍历给定字符串的所有字符,请执行以下操作

a)如果当前字符为非空格,则放置此字符

在索引“计数”处增加“计数”

3)最后,在索引'count'处放置'\ 0'

下面是上述算法的实现。

上述解决方案的时间复杂度为O(n),它只对字符串进行一次遍历。

有朋友建议的另一种解决方案是使用预定义的函数。这是实现:

希望对大家有帮助~

另外如果你想更好的提升你的编程能力,学好C语言C++编程!弯道超车,快人一步!笔者这里或许可以帮到你~

编程学习书籍分享:

编程学习视频分享:

分享(源码、项目实战视频、项目笔记,基础入门教程)

欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!

C语言C++编程学习交流圈子,点击下方【了解更多】获取更多学习资料帮助你学习成长哦~

标签: #c语言字符串追加