jonder
@jonder
Изучаю с++

Как реализовать опциональный ввод?

Как сделать опциональный ввод?

#include <iostream>

using namespace std;

int a,c;
char b;

int main()
{
   cout << "Input a:";
   cin >> a;
   cout << "Input b(optional):";
   cin >> b;
   cout << "Input c:";
   cin >> c;

   cout << a << " " << b << " " << c;

}
  • Вопрос задан
  • 58 просмотров
Пригласить эксперта
Ответы на вопрос 2
Через if
if (/*условие*/){
cout << "Input b(optional):";
cin >> b;
}
Ответ написан
Комментировать
@FirststepsRu
Создание if для ввода b это правильно, но не до конца. Надо определить в main аргументы командной строки, тогда при задании какого-то аргумента в командной строке будет выполняться условие внутри программы. Правда код на Си :)

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv) {
    int opt_b = 0;
    if (argc == 1) printf("No options\n");

    if ((argc > 1) && (strcmp(argv[1],"b")==0)) {
         opt_b = 1;
    }

    if (opt_b == 1) {
        printf("Option b\n");
    }
    return 0;
}


Потом при вызове программы задаете опции.

root@localhost:~# ./a.out
No options

root@localhost:~# ./a.out b
Option b
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы