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

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

Войти
Регистрация
Восстановить пароль
 
PG94
2 / 2 / 0
Регистрация: 15.01.2012
Сообщений: 181
#1

Функция fread и матрицы - C++

15.06.2012, 16:17. Просмотров 463. Ответов 3
Метки нет (Все метки)

Подскажите, как правильно исп. эту ф-ию для считывания информации из файла в матрицу.
Есть маленькая программка, которая никак не хочет работать верно. В чём ошибка, не пойму.
Вот код:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
using namespace std;
int main()
{   FILE *fb;
    int a[5][5];
    int i,j,n;
    if((fb=fopen("file.dat","rb"))==NULL)
    {   printf("error1\n");
        exit(1);
    }
    n=fread(a,sizeof(int),25,fb);
    printf("%d\n",n);
    if(n!=25)
        printf("error2\n");
    else
    for(i=0;i<5;i++)
        {   for(j=0;j<5;j++)
                printf("%-8d",a[i][j]);
            printf("\n");       
        }
    return 0;
}
Буду благодарен за помощь.
P. S.
В данный файл записано ровно 25 чисел, при выполнении программы ф-ия возвращает 13.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.06.2012, 16:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция fread и матрицы (C++):

Функция fread не считывает данные - C++
Доброго времени суток. Столкнулся вот с проблемой не пойму в чем дело. Нужно из текстового файла считать целочисленный массив. ...

Функция fread плохо работает с типом string - C++
Всем доброго времени суток. У меня возникла проблема с чтением из файла. Я храню информацию в виде структуры. struct PC { string...

Функция: получить две матрицы и вернуть номер матрицы, среднее арифметическое элементов которой максимально - C++
нужна помощь в этой задаче!!! Написать функцию, получающую в качестве параметров два массива целого типа произвольного размера и...

fread - C++
Подскажите пожалуйста, как можно записать в структура данные из файла используя fread, просто все записывается в одну кучу и только одна...

fseek / fread - C++
Всем привет! Такой вопрос возник. Есть строка, состоящая из нескольких &quot;записей&quot; в файле (буквы + числа). Нужно с помощью функций...

Непонятки с fread - C++
Добрый день. Столкнулся с такой проблемой: читаю обычный текстовый файл, однако помимо его содержания мне выдает еще ==**** в конце (причем...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Catstail
Модератор
22618 / 10979 / 1779
Регистрация: 12.02.2012
Сообщений: 18,122
15.06.2012, 17:29 #2
1) какова длина файла *.dat?
2) по-моему, fread возвращает число прочитанных байтов. т.е. сравнивать надо не с 25, а с 25*sizeof(int)
0
PG94
2 / 2 / 0
Регистрация: 15.01.2012
Сообщений: 181
15.06.2012, 20:21  [ТС] #3
1)Поясни, что ты понимаешь под длиной ?
2)Возвращает, как я помню, всё-таки кол-во. Но дело в другом: в матрицу не заносятся числовые значения из файла.
0
grizlik78
Эксперт С++
1913 / 1445 / 113
Регистрация: 29.05.2011
Сообщений: 3,001
16.06.2012, 01:46 #4
Цитата Сообщение от PG94 Посмотреть сообщение
1)Поясни, что ты понимаешь под длиной ?
Размер файла в байтах. Очень похоже, что файл у тебя текстовый.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2012, 01:46
Привет! Вот еще темы с ответами:

Fread и fout? - C++
Здравствуйте. Была поставлена предо мной задача: Сделать структуру, которая через меню будет выполнять некоторые действия с файлами....

Нужен совет fread - C++
Как считать с txt файла значения int с помощью функции fread ( не использовать ifstream и оfstream )

Особенности работы fread - C++
Решаю типовую задачу: считывание заголовка bmp-файла (точечного рисунка). Однако у меня ничего не получалось. В ходе расследования...

Функции fread() и fwrite() - C++
Меня интересует что это за &quot;счётчик&quot; в этих функциях fwrite( massiv, *size_int * sizeof(unsigned int), 1, fp); &lt;= в большинстве примеров...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.06.2012, 01:46
Ответ Создать тему
Опции темы

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