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

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

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

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

20.11.2011, 16:23. Просмотров 2108. Ответов 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 символом и больше ничего
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2011, 16:23     ошибка при роботе с файлом "expresion str! = NULL"
Посмотрите здесь:
C++ Найти ошибку в коде. Выдает "line 55 expresion str!=null"
C++ Что происходит при char *str = ""?
C++ Из-за чего может возникать следующая ошибка: "Invalid null pointer"?
Ошибка ( Expression: str!=NULL) C++
Ошибка str!=NULL. Как исправить? C++
Ошибка при работе со списком: "Сбой при преобразовании в COFF: Файл недопустим или поврежден" C++
C++ Ошибка с массивом: программа при вводе "ступорится" при нажатии клавиши Enter
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2011, 16:43     ошибка при роботе с файлом "expresion str! = NULL" #16
например "I:\\pass.txt"
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
20.11.2011, 16:43     ошибка при роботе с файлом "expresion str! = NULL" #17
shaffle, ну во-первых обратный слэш является экранирующим символом. Надо использовать два бэкслэша. Во-вторых кириллица в пути может сильно подтпортить ситуацию.
shaffle
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 85
20.11.2011, 16:48  [ТС]     ошибка при роботе с файлом "expresion str! = NULL" #18
спасибо. с полным путем обратные помогло
не знал на счет \\ и / для полного пути
спасибо
-=ЮрА=-
Заблокирован
Автор FAQ
20.11.2011, 18:54     ошибка при роботе с файлом "expresion str! = NULL" #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;
shaffle
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 85
20.11.2011, 19:38  [ТС]     ошибка при роботе с файлом "expresion str! = NULL" #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;
не работает, пишет что еррор опен пас.тхт

вобще надо не удобно чтто там адресс к файлу полный
так скидываешь кому то екзешник и файл, и не заработает
может ктото знает как исправить эту проблемку?
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.11.2011, 19:42     ошибка при роботе с файлом "expresion str! = NULL" #21
Цитата Сообщение от shaffle Посмотреть сообщение
может ктото знает как исправить эту проблемку?
ложить файл рядом с екзешником, тогда не нужно указывать полный путь, а только имя файла
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2011, 19:43     ошибка при роботе с файлом "expresion str! = NULL"
Еще ссылки по теме:
Ошибка при работе с OpenCV: "нарушение прав доступа при чтении по адресу" C++
error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "fprot" C++
C++ #include "Sales_item.h" - ошибка "включаемый файл включает самого себя"
"вызвано срабатывание точки останова" Expression (stream !=NULL) C++
Что делать, если "просят" разыменовать null-pointer? C++

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

Или воспользуйтесь поиском по форуму:
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2011, 19:43     ошибка при роботе с файлом "expresion str! = NULL" #22
Цитата Сообщение от shaffle Посмотреть сообщение
может ктото знает как исправить эту проблемку?
вводить адрес
http://www.cyberforum.ru/cpp-beginne...ml#post2182744
Yandex
Объявления
20.11.2011, 19:43     ошибка при роботе с файлом "expresion str! = NULL"
Ответ Создать тему
Опции темы

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