C programming для начинающих: часть 3 – передача аргументов программе

 

Предыдущая часть.

Давайте вернёмся к примеру из предыдущей части:

#include <stdio.h>

int main (int argc, char **argv) {

    printf("Hello, world\n");
    printf("Argc: %d\n", argc);

    int i;
    for (i = 0; i < argc; i++) {
        printf("Argv[%d]: %s\n", i, argv[i]);
    }

    return 0;

}

В настоящий момент нас интересует цикл for:

...
for (i = 0; i < argc; i++)
...

Мы рассмотрим циклы подробнее позже, а пока кратко рассмотрим for тут:

  • сначала мы задаём i равным 0:
    i = 0
  • далее мы проверяем условие – i должно быть меньше, чем argc:
    i < argc
  • и если оно меньше – то i увеличивается на единицу:
    i++

Таким образом – мы получаем возможность итерации по всем элементам массива argv:

...
argv[i]
...

И напомню результат её работы:

[simterm]

$ ./hello2 one two three
Hello, world
Argc: 4
Argv[0]: ./hello2
Argv[1]: one
Argv[2]: two
Argv[3]: three

[/simterm]

Тут наш цикл for обнаружил 4 элемента – первым индексом (argv[0]) содержит имя программы, три следующих индекса – 1, 2 и 3 – содержат строки из аргументов – one, two и three.

[simterm]

$ ./hello2 пять шесть
Hello, world                                                                                                                                                                                                                                  
Argc: 3                                                                                                                                                                                                                                       
Argv[0]: ./hello2                                                                                                                                                                                                                             
Argv[1]: пять                                                                                                                                                                                                                                 
Argv[2]: шесть

[/simterm]

Продолжение – C programming для начинающих: часть 4 – printf.