Читаем Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С полностью

/*********************************************************************

/*имя файла: linklist.с                                             */

/*********************************************************************

/*включенные файлы*/

*include stdio.h /*стандартная библиотека ввода - вывода */

*include stdlib.h /*стандартная библиотека динамического */

                    /*распределения*/

/*global variables - глобальные переменные. Объявление этих переменных */

/*помещают в файл заголовка (header file). Они приведены здесь, */

/* чтобы иллюстрировать последовательность построения программы. */

/*определение структуры "автомобиль"*/

struct car {

 int year; /* год производства */

 char make[10]; /*BWM, Hummer, Saturn */

 char model[12]; /*купе, обратимый, SUV, пикап */

 char VTN[10]; /*комбинация цифр, букв */

 float mileage; /*показания спидометра: от 0 до 500,000+*/

 struct car *next; /*указатель на следующий автомобиль в списке */

};

/*определение указателя на автомобиль */

typedef struct car ELEMENT;

typedef ELEMENT *car_temp_ptr;

/*функции прототипов*/

void initialize_link_list(void);

void print_link_list(car_temp_ptr);

void insert_link_list(car_temp_ptr);

void delete_link_list(car_temp_ptr);

void search_link_list(car_temp_ptr);

/*переменные*/

/ " Создают списки, чтобы следить за состоянием автомобильного сервиса*/

car_temp_ptr in_stock_list; /* автомобили в продаже */

car_temp_ptr repair_list; /* автомобили в ремонт - не подлежат продаже*/

car_temp_ptr paint_shop_list;/*автомобили в покраске - не подлежат продаже*/

car_temp_ptr sold_list; /*проданные автомобили -- не подлежат продаже*/

car_temp_ptr new_car_entry; /*новый автомобиль для введения в список*/

int TRUE=1, FALSE=0; /*логические флаги */

void main(void) {

 /*заполняет пустой список переменными NULL */

 in_stock_list = NULL; /* автомобили в продаже */

 repair_list = NULL; /* автомобили в ремонте - не подлежат продаже */

 paint_shop_list = NULL; /* автомобили в покраске - не подлежат продаже*/

 sold_list = NULL; /*проданные автомобили -- не подлежат продаже * /

 new_car_entry = NULL;

 initialize_link_list; /*составление списка для продажи */

 print_link_list(in_stock_list); /*print the list */

 insert_link_list(in_stock_list); /*вставить новый автомобиль в список*/

 print_link_list(in_stock_list); /*распечатать список */

 delete_link_list(in_stock_list); /*удалить автомобиль из списка */

 print_link_list(in_stock_list); /*распечатать список */

 search_link_list(in_stock_list); /*поиск определенного пункта в списке */

}

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже