将 ifstream 逐字读入 char*
Read an ifstream word for word into char*
只是为了好玩而尝试编程测试。规定我一个文件一个字一个字读。
提示我可能要使用ifstream,但是不会让我使用std::string,所以它看起来我必须使用 char*
在 C 中,我会逐行阅读并使用 strok()
,因为我有多个定界符(白色-space、引号、括号等)。
最 C++ 的方法是什么 - 一个一个地获取单词 - 而不使用 std::string?
首先,您必须确保为您的字符串分配了内存(这部分将由 std::string
自动处理)。然后只需使用普通输入运算符 >>
,因为它会在空格处分隔。
不要忘记释放您分配的内存(也由 std::string
自动处理)。
要吸取的教训:使用 char
指针进行此类练习,否则使用 std::string
。
只需将文件读入 std::string
,然后使用 std::string::c_str ( )
从 std::string
对象中检索以 null 结尾的 C 风格字符串。
只是为了好玩而尝试编程测试。规定我一个文件一个字一个字读。
提示我可能要使用ifstream,但是不会让我使用std::string,所以它看起来我必须使用 char*
在 C 中,我会逐行阅读并使用 strok()
,因为我有多个定界符(白色-space、引号、括号等)。
最 C++ 的方法是什么 - 一个一个地获取单词 - 而不使用 std::string?
首先,您必须确保为您的字符串分配了内存(这部分将由 std::string
自动处理)。然后只需使用普通输入运算符 >>
,因为它会在空格处分隔。
不要忘记释放您分配的内存(也由 std::string
自动处理)。
要吸取的教训:使用 char
指针进行此类练习,否则使用 std::string
。
只需将文件读入 std::string
,然后使用 std::string::c_str ( )
从 std::string
对象中检索以 null 结尾的 C 风格字符串。