Хорошо, давай разберёмся с этой задачей по шагам.
Сначала посмотрим на структуру
list. Каждый элемент этой структуры содержит число типаlongи указатель на следующий элемент списка.Переменная
firstсодержит адрес первого элемента списка.В фрагменте программы используется цикл
for, который проходится по всем элементам связного списка, начиная с адреса, хранящегося вfirst.Разберём сам цикл
for. Он инициализирует переменнуюsзначением 0 и приравнивает переменнуюpкfirst, то есть начальный элемент списка.- Условие продолжения цикла:
p != NULL, что означает, что цикл будет выполняться, пока не дойдёт до конца списка (последний элемент списка имеет указательnextравныйNULL). - Шаг цикла:
s += p->a; p = p->next;- на каждой итерации
- Условие продолжения цикла:
