Witam, mam problem w kodzie, którego nie widzę. Program po podaniu tylko parametru -o powinien wywołać z danymi domyślnymi, a jednak tak nie jest. Działa tylko dla podania wszystkich parametrów albo żadnego. Byłbym wdzięczny za wszelką pomoc.
#include "funkcje.h"
using namespace std;
int main(int argc, char* argv[])
{
string zmienna, nazwa_plk_wyj, konv;
int default_xy = 4;
int x = default_xy, y = default_xy, sx = 1, sy = 1, mx = x, my = y;//wymiary tablicy, dane startu, dane mety
if (argc == 1)
{
cout << "Nie podales nazwy pliku wyjsciowego, wiec program sie konczy. Napisz np. -o wynik.txt -s 40 40 -p 2 2 -k 38 32 ";
exit(1);
}
while (argc--) {
zmienna = argv[argc];
if (zmienna == "-o") {
nazwa_plk_wyj = argv[argc + 1];
}
else if (zmienna == "-s") {
konv = argv[argc + 1];
x = stoi(konv);
konv = argv[argc + 2];
y = stoi(konv);
}
else if (zmienna == "-p") {
konv = argv[argc + 1];
sx = stoi(konv);
konv = argv[argc + 2];
sy = stoi(konv);
}
else if (zmienna == "-k") {
konv = argv[argc + 1];
mx = stoi(konv);
konv = argv[argc + 2];
my = stoi(konv);
}
}
if (mx == default_xy) {
mx = x;
my = y;
}
generuj_wypisz(sx, sy, mx, my, x, y, nazwa_plk_wyj);
}