问题标签 [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.
c++ - 有没有一种方法可以使用 cin.getline() 而不必事先定义一个 char 数组大小?
基本上我的任务是必须对一堆可变长度的字符串进行排序,忽略大小写。我知道有一个函数 strcasecmp() 可以比较 cstrings,但不适用于字符串。现在我将 getline() 用于字符串,所以我可以一次读取一行字符串。我将这些添加到字符串向量中,然后为每次调用 strcasecmp() 转换为 cstrings。不必在与 strcasecmp() 比较之前将每个字符串转换为 cstring,我想知道是否有一种方法可以在没有预定义 char 数组大小的情况下将 cin.getline() 用于 cstrings。或者,最好的解决方案是只读取字符串,转换为 cstring,存储在向量中,然后排序?
c++ - 从文件 C++ 中读取多个字符串
我需要一一读取存储在文件中的不同值。所以我在想我可以ifstream
用来打开文件,但由于文件的设置方式是一行可能包含三个数字,另一行一个数字或两个数字我不知道如何读取每个数字逐个。我正在考虑使用stringstream
,但我不确定这是否可行。
该文件是这样的格式。
我需要读取每个数字并将其存储在vector
.
实现这一目标的最佳方法是什么?即使每行包含不同数量的数字,也一次读取一个数字?
c++ - 用户输入...如何检查 ENTER 键
我有一段代码,用户在其中输入键盘输入。当按下 ENTER 时我想做一些事情。我正在检查 '\n' 但它不起作用。如何检查用户是否按下了 ENTER 键?
c++ - 读取由 \t c++ 分隔的字符对
朋友们,我想读一对用\t分隔的字符。我想继续阅读输入,直到用户输入 z 作为任何字符。
以下是我想到的选项:
另外,我想验证输入以确保它是正确的。请建议最好的方法。如果这是重复的,请指出正确的。
谢谢。
c++ - 使用带有 unicode 文件的 getline 出现问题
更新:感谢@Potatoswatter 和@Jonathan Leffler 的评论 - 令人尴尬的是,我被调试器工具提示发现没有正确显示 wstring 的值 - 但是它仍然对我不太有效,我已经更新了问题以下:
如果我有一个小的多字节文件,我想读入一个字符串,我使用以下技巧 - 我使用例如getline
分隔符'\0'
这会读入整个文件,包括换行符。
但是,如果我尝试对宽字符文件做同样的事情,它就不起作用——我wstring
只读取第一行。
例如,如果我的 unicode 文件包含由 CRLF 分隔的字符 A 和 B,则十六进制如下所示:
基于使用 '\0' 的多字节文件 getline 读取整个文件的事实,我认为getline( inf2, contents_wide, wchar_t(0) )
应该读取整个 unicode 文件。然而事实并非如此——在上面的例子中,我的宽字符串将包含以下两个 wchar_ts:FF FF
(如果我删除 wchar_t(0) 它会按预期在第一行中读取(即FE FF 00 41 00 0D 00
)
为什么 wchar_t(0) 不能用作分隔 wchar_t 以便 getline 停止00 00
(或读取到我想要的文件末尾)?
谢谢
c++ - 为什么这个for循环不执行?
我正在为一个练习编写一个程序,该程序将从文件中读取数据并将其格式化为可读。到目前为止,我有一些代码可以将标题与下面的数据分开。这里是:
(str_isalpha()
只是一个适用isalpha()
于字符串中每个字符的函数。)现在,这个程序中的 for 循环没有执行,我不知道为什么。有人知道吗?
编辑:按照建议,我将其更改为
仍然完全跳过 for 循环。
c++ - C ++检测用户按下的ENTER键
我有一个循环,要求用户输入名称。当用户按下 ENTER 键或输入 20 个名称时,我需要停止。但是,当用户按下 ENTER 键时,我的方法并没有停止
c++ - 字符串向量程序在输入前退出
所以,我有一个项目,必须添加、删除和打印向量的内容......问题是,当运行程序退出之前,我可以输入要添加到向量的字符串。我评论了该部分所在的功能。
谢谢!
c++ - Getline 和 16h (26d) 字符
在 VC++ 环境中,我使用(字符串)getline 函数读取打开文件中的单独行。问题是 getline 将字符 1Ah 作为文件结尾,如果它存在于行上,则整个读取过早结束。有什么解决办法吗?
代码片段:
文件内容:
感谢您提供任何信息。
克拉
c++ - Python 等价于 C++ getline()
在 C++ 中,我们可以通过在 getline() 函数中提供我们自己选择的分隔符来输入多行。但是我不能在 Python 中做同样的事情!它只有 raw_input() 和 sys.stdin.readline() 方法,直到我按下回车键。有什么方法可以自定义它以便我可以指定自己的分隔符?