Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2010, 14:20   #1
Роман_какой-то
 
Регистрация: 29.11.2009
Сообщений: 3
По умолчанию Массив структур+файл

Доброго времени суток,
возник вопрос по условию задачи, разъясните пожалуйста.
Условие задачи:
Создайте программу, которая содержит массив структур. Этот массив может содержать не более 10 элементов. Каждый элемент массива содержит строку, в которой может содержаться до 10 символов, целое число и вещественное число. Элементы массива вводятся с клавиатуры. Программа должна создать файл, содержащей реальное количество введенных элементов массива и одной операцией записи поместить в этот файл реальный, введеный массив в виде образа оперативной памяти. Далее программа читает этот записанный массив и печатает его элементы.

Подскажите, при помощи каких функций, мною подчеркнутое, можно выполнить.
Роман_какой-то вне форума Ответить с цитированием
Старый 21.03.2010, 17:25   #2
Роман_какой-то
 
Регистрация: 29.11.2009
Сообщений: 3
По умолчанию

Эм, подскажите, если я запишу элементы в бинарном виде, то это сойдет за образ оперативки?
Роман_какой-то вне форума Ответить с цитированием
Старый 21.03.2010, 18:46   #3
RoS
Форумчанин
 
Аватар для RoS
 
Регистрация: 13.12.2009
Сообщений: 272
По умолчанию

Да, скорее всего именно этого от тебя и ждут, а не просто сойдет
Если я помог вам - порадуйте меня, нажмите на весы слева
RoS вне форума Ответить с цитированием
Старый 21.03.2010, 19:02   #4
Ivan_32
somewhere else
Участник клуба
 
Аватар для Ivan_32
 
Регистрация: 17.07.2008
Сообщений: 1,409
По умолчанию

Код:
typedef struct _MyDataType
{
    float flVar;
    int intVar;
    char str[10];
}MyType;

MyType arr[10];

FILE * lpFile=fopen("myFile.txt","wb");
fwrite(arr,sizeof(MyType),10,lpFile);
Приблизительно так.

[fopen] [fwrite]
"Тяжело в учении, легко в бою" - А.В. Суворов
Ivan_32 вне форума Ответить с цитированием
Старый 22.03.2010, 20:28   #5
Роман_какой-то
 
Регистрация: 29.11.2009
Сообщений: 3
Смех

PHP код:
#include <stdio.h>
#include <string.h>

int main()
{
    
typedef struct

    
{
        
char str[10];
    
float floatvar;
        
int intvar;
    
    
        
    } 
Complex;
Complex data[10];

    
int i;
    

    
FILE *out;


    
out fopen("D:/output.bin","wb");
    
    
printf("Input array of structures (not more, than 10 elements (END - <Ctrl+Z>))");
    for (
i=010i++)
    {
        
printf("\n %d element array of structures: "i+1);
        if(!
gets(data[i].str)) break;

        
        
        
scanf("%l", &data[i].floatvar);
        
scanf("%d", &data[i].intvar);
            
        
       
        
        


fwrite(data,sizeof(Complex),10,out);
                       }
    
fclose(out);

return 
0;

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

Последний раз редактировалось Роман_какой-то; 22.03.2010 в 22:24.
Роман_какой-то вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
массив структур Help_me_please Помощь студентам 3 16.01.2010 02:19
Массив структур MLV Общие вопросы C/C++ 6 08.12.2009 20:44
Массив структур velvetdust Общие вопросы C/C++ 0 21.03.2009 13:18
Динамический массив структур RaZveDchiK Помощь студентам 1 31.08.2008 21:44