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

Почему при чтении бинарного файла происходит экстренное завершение программы? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
aker13
0 / 0 / 0
Регистрация: 08.04.2008
Сообщений: 132
15.02.2012, 08:32     Почему при чтении бинарного файла происходит экстренное завершение программы? #1
в Windows XP при чтение бинарного файла происходит екстренное завершение программы !!!
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*Writing to a random access file */
  #include <stdio.h>           
   struct clientData {                              
      int acctNum;          /* account number */    
      char lastName[ 15 ];  /* account last name */ 
      char firstName[ 10 ]; /* account first name */
      double balance;       /* account balance */   
   }; /* end structure clientData */                    
   int main() 
   { 
   FILE *cfPtr; /* credit.dat file pointer */
     struct clientData client = { 0, "", "", 0.0 };
     /* fopen opens the file; exits if file cannot be opened */
      if ( ( cfPtr = fopen( "credit.dat", "wb+" ) ) == NULL ) {
         printf( "File could not be opened.
" );
      } /* end if */
      else { 
         /* require user to specify account number */
         printf( "Enter account number"
                 " ( 1 to 100, 0 to end input )
? " );
         scanf( "%d", &client.acctNum );
   
         /* user enters information, which is copied into file */
         while ( client.acctNum != 0 ) { 
   
            /* user enters last name, first name and balance */
            printf( "Enter lastname, firstname, balance
? " );          
           /* set record lastName, firstName and balance value */
           fscanf( stdin, "%s%s%lf", client.lastName, client.firstName, &client.balance );
   
            /* seek position in file of user-specified record */
            fseek( cfPtr, ( client.acctNum - 1 ) * sizeof( struct clientData ), SEEK_SET );     
   
            /* write user-specified information in file */           
            fwrite( &client, sizeof( struct clientData ), 1, cfPtr );
   
            /* enable user to specify another account number */
            printf( "Enter account number
? " );
            scanf( "%d", &client.acctNum );
         } /* end while */
   
         fclose( cfPtr ); /* fclose closes the file */
      } /* end else */ 
     if ( ( cfPtr = fopen( "credit.dat", "rb" ) ) == NULL ) {
        printf( "File could not be opened.
" );
 
     } /* end if */
      else { 
       printf( "%-6s%-16s%-11s%10s
", "Acct", "Last Name" "First Name", "Balance" );
 
         /* read all records from file (until eof) */
         while ( !feof( cfPtr ) ) { 
            fread( &client, sizeof( struct clientData ), 1, cfPtr );
   
            /* display record */
            if ( client.acctNum != 0 ) {
               printf( "%-6d%-16s%-11s%10.2f
", 
                       client.acctNum, client.lastName, 
                       client.firstName, client.balance );
            } /* end if */
   
         } /* end while */
   
         fclose( cfPtr ); /* fclose closes the file */
      } /* end else */
      return 0; /* indicates successful termination */
   
   } /* end main */
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2012, 08:32     Почему при чтении бинарного файла происходит экстренное завершение программы?
Посмотрите здесь:

C++ Проверка при чтении из файла
C++ bool при чтении из файла
Лишние символы при чтении бинарного файла C++
Ошибка при чтении/записи из бинарного файла C++
ошибка при чтении бинарного файла C++
C++ Почему происходит ошибка при описании массива?
Зацикливание при чтении из файла C++
C++ Ошибка при чтении файла

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
artkar
0 / 0 / 0
Регистрация: 30.03.2011
Сообщений: 48
15.02.2012, 21:06     Почему при чтении бинарного файла происходит экстренное завершение программы? #2
Ты опиши что твоя прога делает!
И как, то есть алгоритм работы!
В какой момент экстренное завершение?
И главное пришли этот файл credit.dat
aker13
0 / 0 / 0
Регистрация: 08.04.2008
Сообщений: 132
16.02.2012, 14:03  [ТС]     Почему при чтении бинарного файла происходит экстренное завершение программы? #3
Значит при запуске программа сама создает етот файл, и указав номера аккаунтов можете вводить данные клиентов а при нажатии 0 вмето номера аккаунта программа закрывает файл и сразуже читет его и вот тут возникает ошибка.
Yandex
Объявления
16.02.2012, 14:03     Почему при чтении бинарного файла происходит экстренное завершение программы?
Ответ Создать тему
Опции темы

Текущее время: 03:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru