konwersja argumentów z lini poleceń

0

Witam znalazłem funkcje w c++, żeby stringa zmienić na int:

     int i;
    string str="13 51";
    istringstream iss(str);
    for (int n=0; n<2; n++) iss >> i;

a chciałbym zmienić tablice char *argv z głównej funkcji main argumentów i zmienić argumenty na typ int pomoże ktoś bo już sie długo z tym męczę ...?

3

argv to tablica tablic, a nie jeden string, dlatego musisz wybrać który argument chcesz przekonwertować. Jeśli pierwszy to wtedy tak:

int main(int argc, char *argv[]){
   string str(argv[1]);
   //i dalej już wiesz
}

W pierwszym indeksie jest zarezerwowane miejsce na nazwę (albo ścieżkę - nie pamiętam dokładnie) binarki, która zostałą uruchomiona.

2

Zakładając, że te liczby będą jako parametry programu, no to będą w kolejnych c-stringach argv[1], argv[2] itd. Żeby dostać liczbę z takiego c-stringa wystarczy

int num = stoi(argv[1]);
int another = stoi(argv[2]);

I nie trzeba się bawić w istringstream.

1 użytkowników online, w tym zalogowanych: 0, gości: 1