问题标签 [getline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
21667 浏览

c++ - std::getline() 返回

我有一个循环,它使用以下命令读取文件中的每一行getline()

我注意到这样的调用getline()似乎也有效:

这里发生了什么?getline()返回一个流引用。它是否以某种方式转换为指针?这实际上是一个好习惯还是我应该坚持第一种形式?

0 投票
3 回答
5303 浏览

c++ - C++ 中的 getline() - _GNU_SOURCE 不需要?

首先,我对 C++ 很陌生。我相信这getline()不是标准的 C 函数,因此#define _GNU_SOURCE需要使用它。我现在正在使用 C++,而 g++ 告诉我_GNU_SOURCE已经定义了:

谁能确认这是否是标准的,或者它的定义是否隐藏在我的设置中?我不确定引用的最后一行的含义。

该文件的包含如下,所以大概它是在其中一个或多个中定义的?

谢谢!

0 投票
2 回答
11080 浏览

c++ - 为什么 stringstreams rdbuf() 和 str() 给我不同的输出?

我有这个代码,

给我这个输出

ss.rdbuf()->str() : hej hej med dig

ss.rdbuf() : hej med dig

但这是为什么呢?是不是因为 ostreams 对 operator<str() 的定义给了我不同的输出。在我看来,即使我使用了 getline,输出也应该是相同的。

0 投票
5 回答
23936 浏览

c - 是否有 GNU getline 接口的替代实现?

我目前正在进行的实验使用具有复杂源历史且没有明确定义的许可证的软件库。将事物合理化并在固定许可下发布将是大量工作。

它还旨在运行一个随机的 unixish 平台,并且只有我们支持的一些 libc 具有 GNU getline,但现在代码需要它。

有谁知道在限制较少的许可下可以重新实现GNU语义?getline

编辑::我问是因为谷歌没有帮助,如果可能的话,我想避免写一个(这可能是一个有趣的练习,但它不能最好地利用我的时间。)

更具体地说,有问题的接口是:

0 投票
2 回答
19678 浏览

c++ - C++中std::cin对象的规则是什么?

我正在编写一个供我个人使用的小程序来练习学习 C++ 及其功能,它是一个 MLA 引文生成器(我正在写一篇有数十次引文的大型论文)。

由于缺乏更好的方法(我不了解类或在您的 main 中使用其他 .cpp 文件,所以不要费心告诉我,当我有更多时间时,我会继续努力),我正在写每种引用类型的函数。如果我有更多时间,我可能会将其分解为每个重用代码的函数。

我的问题是:std::cin 对象是如何工作的?我目前正在使用 std::cin >> 读取我希望是单个单词的字符串,并使用 getline(std::cin, string) 读取带有空格的字符串。不过,我没有得到正确的输出。我只想知道 std::cin 是如何工作的,以及为什么我总是意外地跳过一些输入(例如,它跳过了 webPage 而不是让我有机会输入它)。

编辑:I/O

如您所见,出了点问题,因为我的输入被跳过了。

0 投票
3 回答
662 浏览

c++ - 是否有可能让 getline() 函数接受 wistream&

只是为了澄清,我指的是字符串类中的全局 getline() 函数。

我想做的是有这样的东西:

但我得到一个:

为了修复它,我需要从 const wistream& read 中删除 const。我理解为什么会发生这种情况,但是是否可以将 getline() 配置为接受 wistream 而无需任何转换,或者我应该忽略它并删除 const?

0 投票
7 回答
19097 浏览

c++ - 在 getline() 方面需要帮助

如果在我的程序中我要求用户输入,我这样做是否有原因:

为什么在输入第一个数字后,它会输出“输入姓名”,然后在我输入 getline(cin, str) 行之前的“输入帐号”之前立即输出“输入帐号”?谢谢!

0 投票
5 回答
2640 浏览

c++ - Getline 在 csv 中读取非常奇怪

我正在尝试使用 get 行读取 csv 以提取用逗号分隔的三个变量。姓名、课程和成绩。

我在第一行读得很好,但它插入了奇怪的换行符并将格式发送到一个集群中。

这是我的代码:

任何想法,我都很难阅读这个文件。

0 投票
12 回答
29413 浏览

c++ - std::getline 在 for 循环中不起作用

我试图在一个字符串变量中收集用户的输入,该变量在指定的时间内接受空格。

由于通常cin >> str不接受空格,所以我会使用 std::getline from <string>

这是我的代码:

任何的想法?

0 投票
2 回答
1995 浏览

c++ - 分段错误取决于字符串长度?

我正在编写一个程序,它将使用 getline 从 infile 中读取行到字符串中,将字符串转换为包含字符串的前 m 个非空白字符的 c 字符串,然后将 c 字符串连接到单个 char 数组中。

示例文件可能如下所示:

所以我最终会得到一个 2x5x5 字符的 char 数组。 现在的问题是我的代码在上面显示的较小的测试用例上运行良好,但是当我在更大的网格(即 100x100x100)上尝试它时出现分段错误。

我会用一个 infile 调用这个程序:./program < infile.in

我已经使用 gdb 运行它并进行了回溯。它始终指向“字符串输入”行

有什么想法可以解决这个段错误吗?谢谢