Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2016, 01:16   #1
KN-155
Новичок
Джуниор
 
Регистрация: 06.05.2016
Сообщений: 2
Печаль Ошибка в СИ(Nonportable pointer comparison)

Выскакивает предупреждение (Nonportable pointer comparison) при возврате головы.
Цитата:
Head_del=Delete_id(Head_del);
Вот весь код.
PHP код:
#include <stdio.h>
#include <conio.h>
#include <alloc.h>
#include <string.h>

typedef struct cat
{
    
struct cat *next;
    
struct cat *prev;
    
int Age;
    
float Weight;
    
char Sex[20];
    
char Name[20];
    
char Breed[20];
}
CAT;

typedef struct head
{
    
struct cat *first;
    
struct cat *last;
}
HEAD;


HEADAdd(HEADhead)
{
    
clrscr();
    
puts("ADD");
    
getch();
    return 
head;
}

HEAD *Delete_menu(HEAD *Head_del)
{
    
char key;
    while(
1)
    {
        
clrscr();
        
puts("1-DELETE PO ID");
        
puts("2-DELETE ALL");
        
puts("\nESC-BACK");

        
key=getch();
        switch(
key)
        {
            case 
'1':
                
Head_del=Delete_id(Head_del);
                return 
Head_del;
            case 
'2':

                return 
Head_del;
            case 
27:
                return 
Head_del;
        }
    }
}

HEAD *Delete_id(HEAD *head)
{
    
clrscr();
    
puts("DELETE PO ID");
    
getch();
    return 
head;
}

HEAD *Delete_all(HEAD *head)
{
    
clrscr();
    
puts("DELETE ALL");
    
getch();
    return 
head;
}

int main()
{
    
HEAD *Head=NULL;
    
char key;
    while(
1)
    {
        
clrscr();
        
puts("1-ADD");
        
puts("2-DELETE");
        
puts("3-EDIT");
        
puts("4-SEARCH");
        
puts("5-SORTIROVKA");
        
puts("6-SAVE");
        
puts("7-LOAD");
        
puts("8-PRINT");
        
puts("\nESC-EXIT");

        
key=getch();
        switch(
key)
        {
            case 
'1':
                
Head=Add(Head);
                break;
            case 
'2':
                
Head=Delete_menu(Head);
                break;
            case 
'3':
                break;
            case 
'4':
                break;
            case 
'5':
                break;
            case 
'6':
                break;
            case 
'7':
                break;
            case 
'8':
                break;
            case 
27:
                return 
0;
        }
    }

Возврат головы должен быть обязательно.
Помогите пожалуйста.
Изображения
Тип файла: jpg Снимок.jpg (23.9 Кб, 124 просмотров)
KN-155 вне форума Ответить с цитированием
Старый 06.05.2016, 01:28   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Попробуйте перед "HEAD *Delete_menu(HEAD *Head_del)" написать "HEAD *Delete_id(HEAD *head);".
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 06.05.2016, 01:53   #3
KN-155
Новичок
Джуниор
 
Регистрация: 06.05.2016
Сообщений: 2
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Попробуйте перед "HEAD *Delete_menu(HEAD *Head_del)" написать "HEAD *Delete_id(HEAD *head);".
Спасибо.Вроде всё хорошо
KN-155 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка Invalid Pointer Operation при работе switch David Villa Общие вопросы C/C++ 5 02.06.2012 16:24
Ошибка при очистке памяти (язык Си): The pointer MUST come from the 'local' heap RomanA Visual C++ 6 29.03.2012 10:16
Массив случайных чисел и ошибка Invalid pointer operation lobz1k Общие вопросы C/C++ 1 05.06.2010 20:40
Ошибка [Error] UPER.pas(57): Incompatible types: 'Integer' and 'Pointer' Pirotexnik Общие вопросы Delphi 4 27.03.2009 11:04