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

Выделение памяти через malloc и считывание данных - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти номер максимального элемента заданной последовательности. Без массивов http://www.cyberforum.ru/cpp-beginners/thread1116263.html
Дана последовательность из n целых чисел. Найти номер максимального элемента в этой последовательности.
C++ Найти количество нечетных элементов заданной последовательности. Без массивов Дана последовательность целых чисел, за которой следует 0. Найти количество нечетных элементов этой последовательности. http://www.cyberforum.ru/cpp-beginners/thread1116262.html
C++ Отличие синтаксиса в различных источниках
Почему данный код на языке c++ компилируется в программе Dev с++ 5.6.0 #include <iostream> using namespace std; int main() { cout << "Hello"; return 0; } а данный нет: #include <iostream.h>
Найти все трехзначные числа, представимые в виде сумм кубов своих цифр C++
Задание: организовать работу программы с помощью файлового вводв вывода. Вариант 1: найти все трехзначные числа, представимые в виде сумм кубов своих цифр. Буду благодарен если кто поможет, знаю что задачка не сложная, но все не могу сделать
C++ При компиляции выдает ошибку E2314 Call of nonfunction Full http://www.cyberforum.ru/cpp-beginners/thread1116180.html
Всем привет) при компиляции выдает ошибку E2314 Call of nonfunction Full #include <stdio.h> #include <stdlib.h> #include <time.h> #include <stdbool.h> #include <alloc.h> #define N 8 #define M 8
C++ Перегрузка операторов Реализуйте класс CTime , моделирующий время суток ( количество часов , минут и секунд). Каркас класса : / / Моделирует время суток , задаваемой количеством часов ( 0-23 ) , / / Минут ( 0-59 ) и секунд ( 0-59 ) class CTime { public : / / Инициализирует время заданным количеством часов , минут и секунд CTime ( unsigned hours , unsigned minutes , unsigned seconds = 0); / / Инициализирует... подробнее

Показать сообщение отдельно
АлександрКом
11 / 11 / 1
Регистрация: 21.10.2012
Сообщений: 327
11.03.2014, 14:25     Выделение памяти через malloc и считывание данных
Здравствуйте. Имеется файл, в котором 6 чисел типа double. В программе имеется 2 массива. В 1-ый записываю все числа из файла, стоящие на нечетных местах, а во 2-ой - всё, что на четных местах. В действительности я не должен знать, сколько чисел в массиве, поэтому я узнаю размер файла и выделяю половину этого размера каждому массиву через malloc. Не могу найти ошибку, значения чисел в массивах совсем не те. (long сделал, чтобы числам из файла точно хватило места)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
long* I;
long* Q;
int err=0;
int nFileLen;
FILE *f;
    f = fopen("C:\\Newfolder\\n", "rb");
    if (f == NULL){
        std::cout << "=(";
        err=1;
    }
    else {
        fseek(f, 0, SEEK_END);
        nFileLen = ftell(f);
        fseek(f, 0, SEEK_SET);
        I=(long*)malloc(nFileLen/2);
        Q=(long*)malloc(nFileLen/2);
        for (int j = 0; j < nFileLen / ( 2 * sizeof(double) ); j++) {
            fread(&I[j], sizeof(double), 1, f);
            fread(&Q[j], sizeof(double), 1, f);
        };
        fclose(f);
    };
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru