只是为了好玩而尝试编程测试。它规定我应该逐个阅读文件的每个单词。
它暗示我可能想要使用ifstream,但 不会让我使用std :: string ,所以看起来我必须使用char *
在C中我会逐行阅读&使用strok()
,因为我有多个分隔符(空格,引号,括号等)。
最C ++的做法是什么 - 逐个获取单词 - 不使用std :: string?
答案 0 :(得分:2)
首先,您必须确保为字符串分配了内存(此部分将由std::string
自动处理)。然后只使用普通的输入操作符>>
,因为它将在空格上分开。
不要忘记释放您分配的内存(也由std::string
自动处理)。
要学习的课程:使用char
指针进行此类练习,否则请使用std::string
。
答案 1 :(得分:0)
只需将文件读入std::string
,然后使用std::string::c_str ( )
从std::string
对象中检索以nul结尾的C风格字符串。