Файл: Понятие переменной в программировании. Виды и типы переменных.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 22.04.2023

Просмотров: 49

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

тип имя: КоличествоБит


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

Пример Разработать программу, осуществляющую упаковку даты в формат

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#define YEAR0 1980
struct date
{
  unsigned short day : 5;
  unsigned short month : 4;
  unsigned short year : 7;
};
int main() {
  struct date today;
  system("chcp 1251");
  system("cls");
  today.day = 16;
  today.month = 12;
  today.year = 2013 - YEAR0; //today.year = 33
  printf("\n Сегодня %u.%u.%u \n", today.day, today.month, today.year + YEAR0);
  printf("\n Размер структуры today : %d байт", sizeof(today));
  printf("\n Значение элемента today = %hu = %hx шестн.", today, today);
  getchar();
  return 0;
}

3.10 Массивы структур

Работа с массивами структур аналогична работе со статическими массивами других типов данных.

Пример Библиотека из 3 книг

#include <stdio.h>
#include <stdlib.h>
struct book
{

  char title [15];

  char author [15];

  int value;
};
int main() {

  struct book libry[3];

  int i;

  system(«chcp 1251»);

  system(«cls»);

  for(i=0;i<3;i++)

  {

    printf(«Введите название %d книги:»,i+1);

    gets(libry[i].title);

    printf(«Введите автора %d книги: «,i+1);

    gets(libry[i].author);

    printf(«Введите цену %d книги: «,i+1);

    scanf(«%d»,&libry[i].value);

    getchar();

  }

  for(i=0;i<3;i++)

  {

    printf(«\n %d. %s «, i+1,libry[i].author);

    printf(«%s %d»,libry[i].title,libry[i].value);

  }

  getchar();

  return 0;
}

3.11 Указатели на структуры

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

Для организации работы с массивом можно использовать указатель р или имя массива:
выражение->идентификатор
  (*выражение).идентификатор

выражение — указатель на структуру или объединение;
идентификатор  — поле структуры или объединения;