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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
shaffle
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 85
#1

ошибка при роботе с файлом "expresion str! = NULL" - C++

20.11.2011, 16:23. Просмотров 2193. Ответов 21
Метки нет (Все метки)

не знаю почему, но выдает постоянно эту ошибку
вот нужная часть кода
C++
1
2
3
4
5
6
7
8
9
char pass[9];
    FILE *file;
        file=fopen("pas.txt","r+t");
        fgets(pass,8,file);
        fclose(file);
    if(strcmp(pass,str))
        return 0;
    else
        return 1;
файл был создан до компиляции ,с именем pas , и разширением .txt
в нем находился пароль из 8 символом и больше ничего
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2011, 16:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ошибка при роботе с файлом "expresion str! = NULL" (C++):

Найти ошибку в коде. Выдает "line 55 expresion str!=null" - C++
Ребятки помогите пожалуйста , вылетает вот такая ошибка :line 55 expresion str!=null //Melnik M . V . #include <stdio.h> #include...

Ошибка Необработанное исключение в "0x001d18f8" в "lr7v2.exe": 0xC0000005: Нарушение прав доступа при чтении "0xcdcdcde9" - C++
class Hdd { public: char Hdd_name; int total_space; int free_space; int speed; Hdd *next; Hdd *previous; };

Что происходит при char *str = ""? - C++
Объясните, пожалуйста, что происходит при const chat *str = "hello" Т.е. тут явно у нас присутствует только объявления указателя str,...

Ошибка при сборке многофайлового проекта: "невозможно преобразовать "int" в "const golf" - C++
Сделал многофайловую программу программу, вот она: //golf.h #include <iostream> #ifndef golg_h_ #define golf_h_ const int Len =...

Где ошибка невозможно преобразовать указатель "this" из "const pers" в "pers &" при выводе объектов через cout - C++
Добрый день! Переписал код из книг Лафоре, создание мультимножества из собственных объектов- справочник телефонный, с именем и фамилией. ...

Из-за чего может возникать следующая ошибка: "Invalid null pointer"? - C++
NEBTELA* fggff; //указатель на объект базового класса fggff = new Zvezda; //переопределение в объект производного класса в...

21
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2011, 16:43 #16
например "I:\\pass.txt"
0
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
20.11.2011, 16:43 #17
shaffle, ну во-первых обратный слэш является экранирующим символом. Надо использовать два бэкслэша. Во-вторых кириллица в пути может сильно подтпортить ситуацию.
1
shaffle
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 85
20.11.2011, 16:48  [ТС] #18
спасибо. с полным путем обратные помогло
не знал на счет \\ и / для полного пути
спасибо
0
-=ЮрА=-
Заблокирован
Автор FAQ
20.11.2011, 18:54 #19
shaffle, попробуйте читать fread, также помните что char pass нужно завершать нуль-терминатором, проще всего обнулить её элементы в самом начале, как сделал ниже, ну и не забывайте проверить сумела ли ваша программа получить доступ к файлу if(!file)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
char pass[9] = {0};
FILE *file=fopen("pas.txt","rt+");
if(!file)
       printf("Error open pas.txt\n";
else
{
       fread(pass,1,8*sizeof(char),file);
       fclose(file);
}
if(strcmp(pass,str))
    return 0;
else
    return 1;
0
shaffle
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 85
20.11.2011, 19:38  [ТС] #20
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
shaffle, попробуйте читать fread, также помните что char pass нужно завершать нуль-терминатором, проще всего обнулить её элементы в самом начале, как сделал ниже, ну и не забывайте проверить сумела ли ваша программа получить доступ к файлу if(!file)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
char pass[9] = {0};
FILE *file=fopen("pas.txt","rt+");
if(!file)
       printf("Error open pas.txt\n";
else
{
       fread(pass,1,8*sizeof(char),file);
       fclose(file);
}
if(strcmp(pass,str))
    return 0;
else
    return 1;
не работает, пишет что еррор опен пас.тхт

вобще надо не удобно чтто там адресс к файлу полный
так скидываешь кому то екзешник и файл, и не заработает
может ктото знает как исправить эту проблемку?
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.11.2011, 19:42 #21
Цитата Сообщение от shaffle Посмотреть сообщение
может ктото знает как исправить эту проблемку?
ложить файл рядом с екзешником, тогда не нужно указывать полный путь, а только имя файла
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2011, 19:43 #22
Цитата Сообщение от shaffle Посмотреть сообщение
может ктото знает как исправить эту проблемку?
вводить адрес
http://www.cyberforum.ru/cpp-beginne...ml#post2182744
0
20.11.2011, 19:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2011, 19:43
Привет! Вот еще темы с ответами:

При компиляции ошибка: C2228: left of ".real",".imag" must have struct/class/union - C++
Помогите, пожалуйста! Компилирую в VS2010... Ошибка: C2228: left of ".real",".imag" must have struct/class/union... Почему возникает эта...

Возникает ошибка "0xC0000005: Нарушение прав доступа при чтении "0xfeeefee2"." - C++
Подскажите, пожалуйста, в чем может быть ошибка и как его исправить? В деструкторе указывает на ошибку. #pragma once class...

Ошибка "*.exe вызвал срабатывание точки останова" и "HEAP CORRUPTION" при вызове деструктора программой - C++
Здравствуйте! Сделал простенькое упражнение на указатели, но программа выдает названные ошибки. При первом после последнего сохранения...

Ошибка ( Expression: str!=NULL) - C++
Выдает ошибку ( Expression: str!=NULL) , вроде сначала работало все, а потом стало вот это выпадать, помогите пожалуйста #include...


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Опции темы

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