Локальные переменные и изменение значений из метода - C (СИ)
Формулировка задачи:
Всем привет,
никак не могу проникнутся духом Си. Пытаюсь написать "связной" список. Есть метод
Который берет указатель на лист (первый элемент). Сохранятся указатель на следующий элемент, а указатель на первый удаляется с помощью free(). Ну и наконец, второй элемент встает на место первого, но как только выходим из метода, указатель указывает в некуда.
int pop(linkedList * liste) { linkedList *element; element = liste->nextElement; int value = liste->value; free(liste); liste = element; return value; }
Решение задачи: «Локальные переменные и изменение значений из метода»
textual
Листинг программы
void /* or whatever */ func1(something_t s); /* передача структуры по значению */ void func2(something_t * p); /* передача указателя на структуру */ void func3(something_t ** pp); /* передача указателя на указатель на структуру */
Объяснение кода листинга программы
- В коде определены три функции: func1, func2, func3.
- Функция func1 принимает в качестве аргумента структуру something_t s.
- Функция func2 принимает в качестве аргумента указатель на структуру something_t p.
- Функция func3 принимает в качестве аргумента указатель на указатель на структуру something_t pp.
- В функции func1 происходит изменение значения переменной s.
- В функции func2 происходит изменение значения переменной p.
- В функции func3 происходит изменение значения переменной pp.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д