这是问题:是否可以使用拆分字符串的程序,以便将该程序中的值用作for循环内的变量。]>
这里是分割字符串的程序:
#include <iostream> #include <string> #include <algorithm> #include <iterator> #include <vector> #include <sstream> template <class Container> void f(const std::string& str, Container& cont) { std::istringstream iss(str); std::copy(std::istream_iterator<std::string>(iss), std::istream_iterator<std::string>(), std::back_inserter(cont)); } int main() { char str[] = "The quick brown fox jumps over the lazy dog"; std::vector<std::string> words; split1(str, words); std::copy(words.begin(), words.end(), std::ostream_iterator<std::string>(std::cout, " ")); }
然后,在main()程序中,我想编写一个for循环,该循环遍历从拆分字符串的程序返回的值,并在其中打印项目。与此类似:
int main() { #some statements //var1 should be the value returned from the program that splits the string for (int i = 0 ; i<=strlen(var1); i++) { cout << var1[i]; } }
我以为也许将字符串拆分的整个程序都可以变成一个函数;然后可以将该函数的调用分配给变量
var1
;这意味着var1
应该是字符串或char数组,这在某种程度上与在这种情况下使用的函数的类型冲突。
是否可以使用C ++语法进行此类操作?我最近开始使用C ++,有些事情似乎非常复杂。
谢谢!
这是问题:是否可以使用拆分字符串的程序,以便将该程序中的值用作for循环内的变量。这是分割字符串的程序:#...
我想澄清这个问题的答案,因为在这里不能使用通常用于字符串或char数组的迭代形式。