diff --git a/dune/stuff/common/string.hh b/dune/stuff/common/string.hh index 831c7069dcf9946aced2e4f00bee687d78b7d04a..bdcd087f1ed02c70e3d531a58c0e262771fb6e34 100644 --- a/dune/stuff/common/string.hh +++ b/dune/stuff/common/string.hh @@ -150,6 +150,24 @@ bool equal(const std::string& first, const std::string& second) return !first.compare(second); } +std::vector<std::string> mainArgsToVector(int argc, char** argv) +{ + std::vector<std::string> ret; + for (int ii = 0; ii < argc; ++ii) + ret.push_back(argv[ii]); + return ret; +} // std::vector< std::string > mainArgsToVector(int argc, char** argv) + +char** vectorToMainArgs(const std::vector<std::string> args) +{ + char** argv = new char*[args.size()]; + for (unsigned int ii = 0; ii < args.size(); ++ii) { + argv[ii] = new char[args[ii].length() + 1]; + strcpy(argv[ii], args[ii].c_str()); + } + return argv; +} // char** vectorToMainArgs(const std::vector< std::string > args) + } // namespace String } // namespace Common