1

Тема: Ввід вхідних параметрів

a.out - скомпільований файл на C++
Є один вхідний стрічковий параметр,
хочу його використовувати зразу при запуску коду:
./a.out param
Як в коді описати зчитування цього параметру?
Пробував

std::cin >> param;


але в такому разі після запуску  ./a.out param все одно доводиться набирати параметер param в консолі і клікати ентер. Як зробити, щоб він зчитувався при такій конфігурації як ./a.out param

2 Востаннє редагувалося 0xDADA11C7 (24.11.2014 23:45:06)

Re: Ввід вхідних параметрів

прочитайте докладніше про це

int main( int argc, const char* argv[] )

argc - кількість параметрів, а argv[] - масив стрічкових параметрів

https://wwwx.cs.unc.edu/~sparkst/howto/cpp_main.php

Подякували: dialectstat, koala2

3

Re: Ввід вхідних параметрів

Ні, не присвоює, воно значення вхідного параметру.

int main(  int argc, const char* argv[] )
{
string x0;
x0 = atoi( argv[1] );

cout<<x0<<endl;
}

при запуску
./myprogram "kljljlkl"
вхідна змінна x0 залишається порожня

4 Востаннє редагувалося 0xDADA11C7 (25.11.2014 00:19:58)

Re: Ввід вхідних параметрів

Я таких "вумних" помилок у коді ще не бачив. argv[1] - стрічка(не класс string), a простий рядок байт, що нулем кінчається. функція atoi перетворює стрічку на число. Що це за число таке "kljljlkl" ?

string x0;

Чом би об’єктові класу string не присвоїти числа?

5

Re: Ввід вхідних параметрів

0xDADA11C7 написав:

функція atoi перетворює стрічку на число.

А, ось де була помилка, тепер все працює, велике дякую!

6

Re: Ввід вхідних параметрів

Якщо треба щось серйозніше ніж просто перевірити як воно робить то є така штука як Getopt правда вона під Лінух.
Хоча є й порт на Вікна XGetopt

7

Re: Ввід вхідних параметрів

0x9111A написав:

Якщо треба щось серйозніше ніж просто перевірити як воно робить то є така штука як Getopt правда вона під Лінух.
Хоча є й порт на Вікна XGetopt

Дякую, я на Лінуксі. А що ця програма робить?

8

Re: Ввід вхідних параметрів

dialectstat написав:

Дякую, я на Лінуксі. А що ця програма робить?

Спрощує обробку вхідних параметрів.
Почитайте приклади