Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
1 / 1 / 0
Регистрация: 08.04.2015
Сообщений: 41
1

Нарушение прав доступа при записи (работа с файлами)

03.01.2017, 21:12. Показов 1296. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
вообщем такая проблема (на скринах),если я правильно понял то что то с переменной не так. прощу помощи и совета.
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <string.h>
#include <locale.h>
char file[100];
char i=0;
int deys=0;
long int password;
long int pasw;
int kolzap;
 
 struct texnika { 
 char naz[100]; 
 char tip[100]; 
 int kol_vo;
 int god;
 int cena;
 }; 
 struct texnika tender[10];
  int main(){
     setlocale(LC_ALL,"Russian");
     printf("Введите пароль: ");
scanf_s("%ld",&password);
pasw = 123456789;
if(password!=pasw){
printf("Неверный пароль");
getch();}
else
{
    printf ("Выберите действие:\n");
    printf ("(1) Просмотр информации\n");
    printf ("(2) Добавление информации\n");
    printf ("(3) Удаление ифнормации\n");
    printf ("(4) Редактирование информации\n");
    printf ("(5) Выход\n");
    scanf_s("%d",deys); 
        
        switch(deys){
    case (1):
        FILE *fl;
    fl=fopen("c:\\Users\\Alexandr\\Desktop\\input.txt","r");
    printf("\n|Название| Тип |Кол-во| Год | Цена |\n\n");
    while (fscanf (fl, "%s%s%d%d%d", tender[i].naz, &(tender[i].tip), &(tender[i].kol_vo), &(tender[i].god), &(tender[i].cena)) != EOF) {
        printf("  %s  %s  %d\t  %d  %d\n", tender[i].naz, tender[i].tip, tender[i].kol_vo, tender[i].god, tender[i].cena); 
        i++;}
        break;
        case (2):
            printf("Введите количество новых записей: \n");
            scanf("%d",&kolzap);
            for (i=0;i<=kolzap;++i)
    fl=fopen("c:\\Users\\Alexandr\\Desktop\\input.txt","a");
    printf ("Введите название:\n");
    fprintf(fl,"%s",tender[i].naz);
    printf ("Введите тип:\n");
    fprintf(fl,"%s",tender[i].tip);
    printf ("Введите количество\n");
    fprintf(fl,"%s",tender[i].kol_vo);
    printf ("Введите год выпуска\n");
    fprintf(fl,"%s",tender[i].god);
    printf ("Введите цену\n");
    fprintf(fl,"%s",tender[i].cena);
    break;
            case (3): ;break;
                case (4): ;break;
                    case (5): ;break;
 
 
getch();
}
}
  }
если есть замечания по коду буду руд выслушать
Миниатюры
Нарушение прав доступа при записи (работа с файлами)   Нарушение прав доступа при записи (работа с файлами)  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.01.2017, 21:12
Ответы с готовыми решениями:

Нарушение прав доступа при записи
подскажите почему возникает ошибка void ChangeBrightness(HDC hdc, RECT In, RECT Out, DWORD Mode,...

Нарушение прав доступа при записи
Подскажите, пожалуйста, почему при запуске такой программы(она должна в файле подсчитывать...

Нарушение прав доступа при записи
Здравствуйте! Я новичок на вашем форуме, буду рад различного рода советам, относящимся к нему. ...

Нарушение прав доступа при записи по адресу 0x00007430
Подскажите, пожалуйста, почему при выполнении программы появляется Вызвано исключение по адресу...

4
1272 / 1029 / 470
Регистрация: 25.12.2016
Сообщений: 3,333
04.01.2017, 11:59 2
А в какой именно строке вылетает ошибка (это можно посмотреть в отладчике)?
0
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
04.01.2017, 13:57 3
Александр228, почему, начиная с 59 строки, %s для типа int?
0
1 / 1 / 0
Регистрация: 08.04.2015
Сообщений: 41
04.01.2017, 19:22  [ТС] 4
ошибка появляется после выбора действия начиная со слова switch
0
1272 / 1029 / 470
Регистрация: 25.12.2016
Сообщений: 3,333
04.01.2017, 20:16 5
38 строка:
C++
1
scanf_s("%d",deys);
нужен амперсанд перед deys
1
04.01.2017, 20:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.01.2017, 20:16
Помогаю со студенческими работами здесь

Ошибка: нарушение прав доступа при записи по адресу
Надо написать следующую программу: дан символьный массив из 101 элемента. По спецификации %s...

Вызывается исключение: нарушение прав доступа при записи
По заданию необходимо вывести фамилию и место в самолете тех пассажиров, у кого масса багажа...

Структуры и связные списки. Нарушение прав доступа при записи
исполняемый файл запускаеться , а когда начинаю вводить данные с клавиатуры выскакует ошибка :...

Нарушение прав доступа при записи по адресу 0х00000000 при добавлении элемента структуры
прошу помощи, выбивает эту ошибку при добавлении элемента структуры, также приму во внимание другие...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru