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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Felixxx
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 3
#1

Структура. Ошибка в коде - C++

19.03.2013, 02:42. Просмотров 294. Ответов 3
Метки нет (Все метки)

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
#include <iostream.h>
#include <string.h>
#include<stdio.h>
 
 
int main()
{ 
        struct NOTE{
        char surname[10];
        char name[10];
        char phone_num[11];
        int birth_date[3];
        int salary;};
        NOTE* m[50]; 
        FILE *f;
        f = fopen("1.dat","rb");
        for(int i=0;;i++) {
        m[i]=new NOTE;
        fread(&m[i], sizeof(NOTE), 1, f);
        if(feof(f)) break;
        }
NOTE *temp;     
 for( i = 0; i < 50-1; i++){
if( m[i]->surname > m[i+1]->surname){
temp = m[i];
m[i] = m[i+1];
m[i+1] = temp;}
}
for( i = 0; i < 50; i++){
    cout<<m[i]->surname<<" ";}
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2013, 02:42     Структура. Ошибка в коде
Посмотрите здесь:

Структура «Покупатель». Ошибка в коде - C++
Помогите пжлста, не компилиться, понимаю что ошибка очень простая, но уже 2 часа сижу и туплю=\ Ввести массив структур в соответствии с...

Баг в коде (статическая структура) - C++
Задача: • Описать структуру с именем NOTE, содержащую следующие поля: • фамилия, имя; • номер телефона; • дата рождения (массив из...

исправить ошибку в коде с++(структура данных) - C++
определить структурный тип,содержащий следующую информацию: фио риелтора,тип квартиры,кол-во комнат,стоимость,дата продажи. ввести 5...

Структура (найти ошибку в этом коде) - C++
Добрый день. Возникла такая проблема, не могу найти ошибку в этом коде, выводит непонятные символы. Уже все перепробовал) #include...

Структура,ошибка - C++
void sum(){char a,b=0; int sum=0; cout&lt;&lt;&quot;Введiть группу суму оцiнок якої потрібно дiзнатися: &quot;; cin&gt;&gt;a; for(int i=0;i&lt;size;i++)...

Структура ошибка - C++
#include &lt;iostream&gt; #include &lt;istream&gt; #include &lt;clocale&gt; using namespace std; struct weather { char* data; char*...

структура. ошибка с2601( - C++
добрый день. вот,есть структура,но при компиляции выдает ошибки недопустимые локальные определения функций menu, enter, input, update,...

Структура в Файле (ошибка) - C++
в файле уже написаны числа в виде: 4 1 5 8 5 3 4 9 3 Первое число &quot;4&quot; - количество точек &quot;P&quot;. След-е числа это координаты...

Почему выходит ошибка (структура) - C++
Цель: Создать структуру с данными телефона (модель - ОС - цена) Позже подключу сортировку. Код компилируется, программа запускается,...

не могу понять где ошибка,структура в с++. - C++
Опишите запись Анкета и поместите в нее следующую информацию:фио,адрес,пол,возраст.Определите сколько лиц женского пола в возрасте старше...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 1
19.03.2013, 02:56     Структура. Ошибка в коде #2
Цитата Сообщение от Felixxx Посмотреть сообщение
if( m[i]->surname > m[i+1]->surname)
Так нельзя делать. Открой для себя функцию strcpy
SDev
43 / 41 / 10
Регистрация: 15.03.2013
Сообщений: 88
19.03.2013, 03:50     Структура. Ошибка в коде #3
Наверное так:

C++
1
2
3
4
5
6
7
8
NOTE temp; // у вас здесь был объявлен указатель, что не дает выделения памяти под переменную типа NOTE
 
for( i = 0; i < 50-1; i++){
if( strcmp(m[i]->surname,m[i+1]->surname) > 0 ){ // функция сравнения строк
temp = m[i];
m[i] = m[i+1];
m[i+1] = temp;}
}
в вашем коде нет подсчета прочитанных элементов массива m из файла
если их ровно 50, то все будет корректно, а если меньше или больше, то ниже в цикле идет обращение к
неразмещенным в памяти элементам.
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 1
19.03.2013, 04:46     Структура. Ошибка в коде #4
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Открой для себя функцию strcpy
тьфу, strcmp
Yandex
Объявления
19.03.2013, 04:46     Структура. Ошибка в коде
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru