Что такое аргументы командной строки?

Написать программу, производящую операции над текстовыми входными данными согласно своему варианту. Указанные в варианте операции производятся циклично над каждой отдельной строкой. Если программе не переданы аргументы командной строки, входные данные запрашиваются с клавиатуры. В противном случае первый аргумент командной строки используется как имя файла, из которого входные данные прочитываются построчно.

что значит аргумент командной строки?


Ответы (1 шт):

Автор решения: Sergey K.

Отвечаю на вопрос "что значит аргумент командной строки?".
Когда запускают какую-то консольную программу, ей передаются параметры, они же "аргументы". Например, my_app.exe -name Artem -file D:\\Documents\file.txt. Здесь аргументами будут:

  • name
  • Artem
  • file
  • D:\Documents\file.txt

Таким образом, программе передаём разные входные данные.
Согласно данному заданию, либо аргументом (или параметром) нужно передать при запуске название файла. Если же такого аргумента нет, то нужно попросить пользователя ввести название файла во время выполнения программы.

Для работы с аргументами, переданными на запуск программы в методе Main есть параметр string[] args. Например, вот так можно проверить количество переданных аргументов:

class TestClass
{
    static void Main(string[] args)
    {
        // Display the number of command line arguments.
        Console.WriteLine(args.Length);
    }
}

Естественно, если длина массива аргументов равно 0, значит, их не передали. Иначе же в данном случае нужно просто считать первый аргумент, считая, что это правильный путь до файла, в ином случае, попросить ввести пользователя путь.

string filePath;

if (args.Length == 0)
{
    Console.WriteLine("Введите путь до файла: ");
    filePath = Console.ReadLine();
}
else {
    filePath = args[0];
}

UPD: прилагаю ссылки для ознакомления.

→ Ссылка