Шаг 68.
Использование строк в командной строке

    Здесь мы рассмотрим вопросы выполнения программ с параметрами.

    Для дальнейшего изложения нам понадобится понятие командная строка. Предположим, что мы откомпилировали файл a.cpp и получили файл a.exe.

    Строка вида C:\>a называется командной строкой, но она может быть записана и так:

   C:\>a Ученье свет

    Ранее мы не указывали аргументы функции main(), в дальнейшем нам будет необходимо указывать два аргумента функции main().

    Записывать ее мы будем так:

   main (int argc,char *argv[])
где:

    Для командной строки:

   C:\>a


Рис.1. Значение аргументов функции main()

а для строки:
   C:\>a Ученье свет


Рис.2. Значение аргументов функции main()

    Теперь параметры командной строки мы можем использовать в программе для ввода исходной информации.

    Пример. Для запоминания числа  p иногда используют "магические" фразы, например: "Это я знаю и помню прекрасно Пи многие знаки мне лишни напрасны" или "Кто и шутя и скоро пожелаетъ Пи узнать число ужъ знаетъ". Число букв в каждом слове любой из данных фраз представляет собой некоторую цифру числа p: "это"-3, "я"-1, "знаю"-4 и т.д. Попробуем вывести на печать число p, используя любую из указанных фраз.

    Фраза записывается в строке с именем программы, перед запуском.

#include<iostream.h>
#include<string.h>
void main (int nargs,char *args[])
{
     int n;
     if (nargs<2)
        cout << "Строка не введена\n";
     else
        for (int i=1;i<nargs;i++)
        {
           n=strlen(args[i]);
           if (n>9)
              cout << "\nОшибка!!! Слово длиннее 9 букв!";
           else
              if (i==1)
                 cout << n <<".";
              else
                 cout << n;
        }
      cout << endl;
}
Текст этой программы можно взять здесь.

    Результат работы программы:

   Это я знаю и помню прекрасно Пи многие знаки мне лишни напрасны
   3.14159265358
   apro ldv orp keng o
   4.3341
   Кто и шутя и скоро пожелаетъ Пи узнать число ужъ знаетъ
   3.1415926536


    На следующем шаге мы начнем знакомиться с организацией файлов в C++.


Предыдущий шаг Содержание Следующий шаг