Предположим, у меня есть char **argv
.
Во-первых, как мне распечатать все строки в argv
?Я попробовал следующее:
char *temp;
temp = *argv; // Now points to the first string?
while (temp != NULL) {
printf("%s ", temp);
temp++;
}
Здесь при увеличении temp
пропускается только один символ.Почему это происходит?Я знаю, что argv
это массив, который содержит точки.Каждый указатель указывает на массив char*
.Если так, то почему это не работает?Я знаю, что, поскольку temp
имеет тип char
, увеличение этого указателя увеличит его на 1
символ (или байт).Если так, как я могу увеличить указатель на следующий массив и вывести эту строку?