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

Удаление звена списка (динам. структ) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проблема с корректным сохранением текста в файле http://www.cyberforum.ru/cpp-beginners/thread358928.html
Просьба помочь. Что то сам не могу собразить в чем проблема. Проблема: программа сохроняет введенные с клавиатуры символы. Если с клавиатуры введенны русские имена например: Иванов Иван. при открытие файла программа выдает непонятные символы. Если же введенно на англ.языке:Ivanov... или же цифры : 1,2,3 Все нормально. Собственно хотелось бы узнать в чем проблема. я подозреваю дело в...
C++ Передать данные из одной функции в другую и т.д. Добрый день, подскажите пожалуйста, как передать данные из одной функции в другую, уже весь мозг себе вынес. Вообщем есть 3 функции, в первой вводим данные, вторая занимается подсчётами тех данных, которые мы вводим в первой, третья выводит результаты работы второй. #include <stdlib.h> #include <iostream> #include <iomanip> #include <windows.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread358921.html
C++ работа с массивомам и функцией
люди помогите плиз решить эту лабу по с++ сам фигово в нем пока что понимаю накидал вариант он ниже Во всех приведенных ниже вариантах использовать меню для организации работы программы, исходные данные предварительно записать в текстовый файл. Разработать схему алгоритма и программу, используя функции с параметрами для ввода массива и его обработки. В массиве хранятся данные об осадках за...
C++ Существует ли программа, меняющая код с Паскаля на Си?)))
Просто на паскале есть программа, и ее нужно на СИ переписать, а это очень для меня сложно. { for Don, BarberShop, ver.04, 26/11/06 } { by Lapp } var TimeIn:arrayof real; {время прихода кждого клиента} ServiceTime:array of Real; {время обслуживания каждого клиента} TOpen,TClose:real; n,i:integer; {общее число клиентов}
C++ помогите переделать программу!) http://www.cyberforum.ru/cpp-beginners/thread358905.html
Ребята, вы уже не раз меня выручали) Опять столкнулся с проблемкой. Нужно написать программу, реализующую разветвляющийся алгоритм задачи индивидуального варианта с использованием оператора switch. Для целого числа k от 1 до 9 напечатать фразу «мне k лет», учитывая при этом, что при некоторых k слова «лет» надо заменить на слово «год» или «года». Если бы не SWITCH, то я бы мог создать...
C++ разработать функцию с параметрами для ввода массива люди помогите плиз решить эту лабу по с++ сам фигово в нем пока что понимаю накидал вариант он ниже Во всех приведенных ниже вариантах использовать меню для организации работы программы, исходные данные предварительно записать в текстовый файл. Разработать схему алгоритма и программу, используя функции с параметрами для ввода массива и его обработки. В массиве хранятся данные об осадках за... подробнее

Показать сообщение отдельно
RaTeN
0 / 0 / 0
Регистрация: 14.11.2010
Сообщений: 10
01.10.2011, 13:45     Удаление звена списка (динам. структ)
Написал функцию, но происходит ошибка

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
void Udalenie(Apteka *phead)
{
    int nomer;
    Apteka *t, *temp1, *temp2, *temp3, *temp4;
    t=phead; t=(*t).sled;
    cout<<"Введите номер удаляемой аптеки"<<endl;
    cin>>nomer;
    //нужно найти указатель на звено, которое мы будем УДАЛЯТЬ!
    while(t!=NULL)
    {
        if(nomer==(*t).nomer) temp1=(*t).sled; 
        t = (*t).sled;  
    }
    // temp1 указатель на звено, которое нужно удалить  
    
    
    temp2=(*temp1).sled;
    if(temp2!=NULL)
    {
        (*temp1).nomer=(*temp2).nomer;
        (*temp1).nazvanie=(*temp2).nazvanie;
        (*temp1).adres=(*temp2).adres;
        (*temp1).sled=(*temp2).sled;
        delete temp2;
    }
    else //если удаляемое звено последнее
    {
        temp3=phead; 
        temp4=(*temp3).sled;
        while(temp4!=temp1)
        {
            temp3=temp4;
            temp4=(*temp4).sled;
        }
        (*temp3).sled=NULL;
        temp4=NULL;
        delete (temp1);
    }
}
Что не так?

Добавлено через 5 минут
мб я не правльно нашел указатель на удаляемое звено?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru