Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

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

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

Для работы в бинарном режиме существует две функции: fread(), fwrite(). В заголовочном файле они определены:

size fread(void*buffer, size_t size, size_t count, FILE*stream);

size fwrite(void*buffer, size_t size, size_t count, FILE*stream);

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

Size – размер элемента в байтах.

Count – число считываний элемента.

Stream – указатель на файл.

#include <stdio.h>

#define N2

Struct tag_book{

Char name[100];

Char author[100];

Int year;

}books[N];

Int main(){

For (int i=0; i<N; i++){

Scanf(“%s”, books[i].name);

Scanf(“%s”, books[i].author);

Scanf(“%i”, &books[i].year);}

FILE*fp=fopen(“my.txt”, “wb”);

Fwrite(books, sizeof(books),1,fp);

Fclose(fp);

Fp=fopen(“my.txt”, “rb”);

Fread(books, sizeof(books),1,fp);

Fclose(fp);

Puts(“------”);

For(int i=0; i<N; i++);{

Puts(books[i]name);

Puts(books[i].author);

Printf(“%i\n”, books[i].year);

}

Return 0;

}

#include <stdio.h>

Void main(){

FILE*stream;

Char list[30];

Int I, numread, numwritten;

If(Stream=fopen(“my”,”wb”))!=NULL){

For(i=0;i<25;i++)

List[i]=(char)(‘z’-i);

Numwritten=fwrite(list,sizeof(char),25,stream);

Printf(“wrote %i items\n”,numwritten);

Fclose(stream);}

Else printf(“problem opening file\n”);

If(Stream=fopen(“my”,”rb”))!=NULL){

Numread=fread (list,sizeof(char),25,stream);

Printf(“numbers of items read %i\n”,numread);

Printf(“contents of buffer = %.25s\n”,list);

Fclose(stream);}

Else printf(“File could not be opened\n”);

Return;

}

В данном примере массив list выступает в качестве буфера, для ввода и вывода информации из бинарного файла. Элементы буфера инициализируются буквами латинского алфавита от z до b.  Записываются в файл с помощью fwrite. Оператор sizeof(char) указывает размер элемента – буквы, а число 25 соответствует числу записанных букв.

Битовые поля

Битовые поля в Си объявляются с помощью структур, позволяют получать доступ к отдельным битам или группам битов. Доступ к отдельным битам можно осуществлять с помощью побитовых операций, но использование битовых полей упрощает понимание программы.

Синтаксис объявление битового поля:

Struct <имя>{

<тип><имя>:<размер>;

};

#include <stdio.h>

#include <conio.h>

Struct byte{

Unsigned a0:1;

Unsigned a1:1;

Unsigned a2:1;

Unsigned a3:1;

Unsigned a4:1;

Unsigned a5:1;

Unsigned a6:1;

Unsigned a7:1;

};

Void main(){

Byte x={0,0,0,1,0,0,0,0};

x.a1=1;

printf(“size of byte = %i\n”, syzeof(byte));

printf(“ x.a1=%i\n”, x.a1);

printf(“ x.a3=%i\n”, x.a3);

printf(“x=%i\n”,x);}




1. Сестринский уход при ротавирусной инфекции
2. ТЕМА 49 НАДО ПРОСТО НЕ ВЕРИТЬ А ВЕРОВАТЬ
3.  с середины XIX в. до 1918 г
4. Харківська академія неперервної освіти Завдання ІІ етапу Всеукраїнської учнівської олімпіади з німецьк
5. Реферат- Аналіз нелінійних ефектів, які обмежують пропускну здатність оптичних компонентів тракту, та шляхи їх оптимізації
6. ru Все книги автора Эта же книга в других форматах Приятного чтения Джеймс Аллен Как человек
7. тема банковского законодательства
8. Оценка кредитоспособности юридического лица
9. Вариант 16 Выполни
10. Методы оценки инвестиционного проекта
11. Иерусалим сегодня
12. ТЕМА ’1 вопрос 5. Внешняя и внутренняя среда организации их элементы
13. Изучение и формирование мотивов учения личности определенного субъекта
14. Облікова політика
15. Остеохандроз и его профилактика
16. Философия Норвегии
17. Экономическая доступность медицинского обслуживания
18. Безработица молодеж
19. 13ЛВ Земба Назар Перевірив- кандидат технічних наук Овсяк О
20.  Текущее состояние и актуальные проблемы функционирования сферы образования 3