мы только начали с с ++, и я застрял в задаче домашнего задания. Надеюсь, что кто-то может оказать мне конкретную помощь здесь ..
Следующая ситуация: мы анализируем значения через аргументы нашей программы, и определение первого параметра "argv [0]" содержит имя программы, как и все остальные. знает. Но мне просто нужно "printParametersToFile.exe" из argv [0] (C: \ Users \ Alex \ Documents \ visualstudio-workspace \ OOP \ OOP19_01 \ Debug \ printParametersToFile.exe) ... Здесьмоя текущая попытка:
int main(int argc, char *argv[]) {
std::vector<std::string> myArray;
std::vector<std::string>::iterator it;
std::string searchKey = ".exe";
std::string programmName;
// populate the Array
for (int i = 0; i < argc; ++i)
myArray.push_back(argv[i]);
for (int i = 0; i < argc; ++i)
{
if (i == 0)
{
///z.B.: C:\Users\Alex\Documents\visualstudio-workspace\OOP\OOP19_01\Debug\printParametersToFile.exe
std::cout << "Arguments = " << argc-1 << "\n";
it = std::find(myArray.begin(), myArray.end(), searchKey);
programmName = ...
std::cout << "Programmname:\t" << programmName << std::endl; /// Alternatively, the endl manipulator can also be used to break lines.
}
else
std::cout << "Argument" << i << " :\t" << myArray[i] << std::endl;
}
К сожалению, моя переменная итератора всегда NULL, у кого-нибудь здесь есть хорошее решение для меня здесь?
Заранее спасибо!