Здесь мы рассмотрим вопросы выполнения программ с параметрами.
Для дальнейшего изложения нам понадобится понятие командная строка. Предположим, что мы откомпилировали файл 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++.