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

Обнуляются поля в структуре - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нарисовать блок-схему программы http://www.cyberforum.ru/cpp-beginners/thread1491036.html
Нужна Блок схема программы "Тест". Вот код: #include "stdafx.h" #include <iostream> #include <fstream> #include <stdio.h> #include <conio.h> #include <string> using namespace std; struct test
C++ Разделить файл на четные и нечетные числа Программа открывает файл,заполненный случ.числами в диапозоне -500 500.затем считывает из него данные,разделяет четные и нечетные числа и записывает другой файл,сохраняя исходный порядок для каждой группы(сначала отрицательные потом положительные).программа должна работать со списком,который должен очищаться после сохранения во второй файл. НУЖНО СРОЧНО,помогите http://www.cyberforum.ru/cpp-beginners/thread1491032.html
Составить блок-схему к программе C++
#include "stdafx.h" #include <iostream> #include <stdio.h> #include <conio.h> #include <dos.h> int main() { int value; std::cout << "Enter value" << std::endl;
C++ Нужна блок-схема
#include "stdafx.h" #include <iostream> #include <stdio.h> #include <conio.h> #include <dos.h> int main() { int value;
C++ Построить таблицу значений функции http://www.cyberforum.ru/cpp-beginners/thread1490996.html
Постройте таблицу значений функции для . Решить задачу тремя способами: использовать операторы for, while, do while.
C++ Как работает эта программа? (клиент-сервер) клиент: #include <stdio.h> #include <string.h> #include <winsock2.h> #include <windows.h> #pragma comment(lib, "ws2_32.lib") #define PORT 666 char SERVERADDR ; подробнее

Показать сообщение отдельно
ReDoX
0 / 0 / 0
Регистрация: 01.07.2015
Сообщений: 10
01.07.2015, 12:38     Обнуляются поля в структуре
Всем привет!
Курю книжку по плюсам от Шилдта. Домашнее задание было в книге реализовать поиск по имени товара. Вот объявление структуры.

C++
1
2
3
4
5
6
7
8
9
const size_t arraySize = 255;
 
struct InventoryType {
    char name[40];
    int onHand;
    int leadTime;
    double cost;
    double retail;
} inventory[arraySize];
Искать нужно по name. Вот функция, которая осуществляет поиск.

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
void search()
{
    /*
     * Получаем искомое имя.
     */
    char *name = new char[80];
    cout << "Введите наименование товара: ";
    cin >> *name;
 
    size_t *inventoryItem = new size_t(0);
 
    for (; *inventoryItem < arraySize; ++(*inventoryItem)) {
        /*
         * Проходим по всей структуре пока не найдем соответствие,
         * если нашли, завершаем цикл.
         */
        if (!strcmp(name, inventory[*inventoryItem].name))
            break;
    }
 
    delete[] name;
 
    /*
     * Передаем на вывод то, что нашли.
     */
    display(inventoryItem);
}
В ней нет проблемы, по крайней мере я так думаю. Проблема заключается в функции вывода (display() если быть точным). Проблема в том, что все поля иногда обнуляются. Когда именно я так и не понял. Собственно функция.

C++
1
2
3
4
5
6
7
8
9
10
11
void display(size_t *inventoryItem)
{
    cout << "Имя: " << inventory[*inventoryItem].name << endl;
    cout << "Стоимость: $" << inventory[*inventoryItem].cost<< endl;
    cout << "В розницу: $" << inventory[*inventoryItem].retail << endl;
    cout << "В наличии: " << inventory[*inventoryItem].onHand << endl;
    cout << "До пополнения осталось: "
        << inventory[*inventoryItem].leadTime << " дней" << endl << endl;
 
    delete inventoryItem;
}
Тренируюсь в указателях, просьба не бранить за это

В дебаге если смотреть, то все поля в структуре равны 0 или '\0' и потом несколько раз выводится меню. Есть идеи на счет проблемы?

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