Форум программистов, компьютерный форум CyberForum.ru

Как сделать удаление последнего элемента списка ? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ определить, в каких строках матрицы A[7][5] сумма элементов четная... http://www.cyberforum.ru/cpp-beginners/thread412041.html
определить, в каких строках матрицы A сумма элементов четная, а в каких строках матрицы B сумма элементов нечетна.
C++ Задача на шифрование текста, язык Cи. Произвести шифрование текста согласно вводимому ключу , который представляет из себя последовательность символов ( изначально 1,2,3,4,5,6 и тд, кол-во символов произвольное). Текст разбивается на фрагменты равные по кол-ву символов в шифре и в каждом из них шифрование производится отдельно. Пример: стандарт 12345 || 12345 || 12345 шифр 45123: 45123 || 45123 || 45123 ... http://www.cyberforum.ru/cpp-beginners/thread412038.html
Помогите, пожалуйсто, с выполнением заданий на иключения!!! C++
Функции обязаны выполнять проверку передаваемых параметров и генерироввать исключение в случае ошибки. Все функции реализуются в 4-х вариантах: 1. без спецификации исключений 2.со спецификацией throw 3.с конкретной спецификацией с подходящим стандартным исключением 4.спецификация с собственным реализованным исключением Собственное исключение должно быть реализованно в трёх вариантах: как...
C++ Составить процедуру, замещающую в исходной строке все единицы нулями и все нули единицами.
Составить процедуру, замещающую в исходной строке все единицы нулями и все нули единицами. Замена должна выполняться, начиная с заданной позиции строки..есть идейки??? на си а не си++
C++ Поменять местами минимальный и максимальный элементы в объектах класса(неверный вывод результата) http://www.cyberforum.ru/cpp-beginners/thread412025.html
#include <iostream> #include <windows.h> using namespace std; const n=5; class array { public: array();
C++ нименьшее из чётных чисел и удалить из массива все элементы=0 помогите пожалуйста найти: 1) наименьшее из чётных чисел 2)удалить из массива все элементы равные нулю #include <iostream> #include <stdlib.h> #include <time.h> void printArray(int, const int); using namespace std; int main() подробнее

Показать сообщение отдельно
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
19.12.2011, 23:14     Как сделать удаление последнего элемента списка ?
Если список односвязный, то как-то так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void removelast(Listnode **head)
{
   Listnode *ptr1, *ptr2;
    
   if (*head == NULL)
      return;
   if ((*head)->next == NULL) {
      free(*head);
      *head = NULL;
      return;
   }
   for (ptr1 = *head, ptr2 = (*head)->next;
      ptr2->next != NULL;
      ptr1 = ptr2, ptr2 = ptr2->next)
         ;
   free(ptr2);
   ptr1->next = NULL;
}
Listnode - тип узлов вашего списка, с остальным думаю разберетесь... с двусвязным списком ещё проще.
 
Текущее время: 15:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru