Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ошибка "Access violation..." при попытке отсортировать структуру из файла быстрым методом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Несколько простых задач... http://www.cyberforum.ru/cpp-beginners/thread306934.html
1. составить программу вывода 3-х значных десятичных цифр сумма которых делится на 3. #include "stdafx.h" #include <stdio.h> #include <iostream> using namespace std; int _tmain(int argc,...
C++ нужно составить программу. Всем привет,люди знающие хорошо с++ помогите написать программу. С внешнего устройства (с клавиатуры, из файла) вводятся последовательно числа, количество которых велико и заранее неизвестно.... http://www.cyberforum.ru/cpp-beginners/thread306922.html
Обработка символьной информации C++
Добрый день. Форумчани, очень нужна помощь, вот задание:Распечатать в порядке, обатном алфавитному, все буквы, которые входят в текст не менее трех раз... Вот код: #include "iostream" #include...
Списки, динамическая память и указатели C++
11. Написать функцию numberstring( ) для подсчета числа строк в тексте. Напечатать это число. То есть нужно создать однонаправленный список, в который заносится построчно текст какой-либо уже...
C++ Для каждого массива опpеделить номеp столбца с наибольшим количеством положительных элементов http://www.cyberforum.ru/cpp-beginners/thread306891.html
Помогите с решением!! Что надо вставить вместо ???, чтобы все работало? Даны вещественные массивы A, V. Для каждого массива опpеделить номеp столбца с наибольшим количеством положительных...
C++ Макросы Ребята помогите!Надо переделать все пож макросы.Но в литературе как -то всё обрывками написано.непонятно как целиком программу писать! вот напримет,было сказано - пишем в тексте программы ... подробнее

Показать сообщение отдельно
Alaraf
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 6

Ошибка "Access violation..." при попытке отсортировать структуру из файла быстрым методом - C++

28.05.2011, 15:56. Просмотров 757. Ответов 8
Метки (Все метки)

Собстно ошибко "Project '...' raised exception class EAccessViolation with message 'Access violation at address 00401464 Write of address 004040bc'. Process stopped. Use..."
Компилируется нормально, всё работает. Ошибка вылетает при выборе сортировки, подсвечивается строчка 19 "data [ j ] = temp;" Билдер вешается..

структура
C++
1
2
3
4
5
6
7
8
struct telephone
{
        char name[30];
        char adr[40];
        long int number;
};
 
struct telephone data;
сортировка

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
//-------------------------------------SORT-------------------------------------
 
void qs_struct ( struct telephone data [] , int left, int right )
{
 
   register int i, j;
   char *x;
   struct  telephone temp;
 
   i = left; j = right;
   x = data [( left+right ) / 2 ] .name;
 
   do {
     while (( strcmp ( data [ i ] .name,x ) < 0 ) && ( i < right )) i++;
     while (( strcmp ( data [ j ] .name,x ) > 0 ) && ( j > left )) j--;
     if ( i <= j ) {
       temp = data [ i ] ;
       data [ i ] = data [ j ];
       data [ j ] = temp;
       i++; j--;
     }
   } while ( i <= j ) ;
 
   if ( left < j ) qs_struct ( data, left, j ) ;
   if ( i < right ) qs_struct ( data, i, right ) ;
}
 
void quick_struct ( struct telephone data [] , int count )
{
   qs_struct ( data, 0 ,count- 1 ) ;
}
main
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
main()
{
 FILE *t,*f;
 char another,choice;
 char cname[30];
 long int n;
 long int recsize;
 int z;
 int i,j,a,m,fl,l;
 t=fopen("TELEPHONE.DAT","rb+");
 if(t==NULL)
 {
       t=fopen("TELEPHONE.DAT","wb+");
       if(t==NULL)
       {
         printf("Error, File can't open\n");
         getch();
         }
         }
 recsize=sizeof(data);
 while(1)
 {
   fflush(stdin);
   int p = Menu();
   switch(p)
...
 
case 7:
           rewind(t);
           quick_struct(&data,recsize);
           fflush(stdin);
           break;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.