Почему символьный строковый массив мы можем передать в функцию без указания количества элементов? - C (СИ)
Формулировка задачи:
Почему символьный строковый массив мы можем передать в функцию без указания количества элементов?
Решение задачи: «Почему символьный строковый массив мы можем передать в функцию без указания количества элементов?»
textual
Листинг программы
const char * words[] = { "any", "many", "money", "more", NULL };
size_t all_words_len(const char ** words) {
size_t all_len = 0;
for ( ; *words; ++words )
all_len += strlen(*words);
return all_len;
}
Объяснение кода листинга программы
- Создается массив символьных строк words[], который содержит пять элементов:
any,many,money,more, NULL. - В функции all_words_len() используется цикл for, который проходит по всем элементам массива words[].
- Внутри цикла переменная all_len увеличивается на длину текущей строки, используя функцию strlen().
- После окончания цикла возвращается общее количество символов во всех строках массива words[].