ентів масиву та їх кількість.
Структура - це сукупність елементів, об'єднаних під одним ім'ям. Структура являє собою складений об'єкт, в який можуть входити елементи різних типів. Для кожного елементу виділяється своя область пам'яті.
Перечіслімий тип являє собою набір цілочисельних констант, використовуваних зазвичай для організацій розгалужень в програмі.
Об'єднання - це сукупність змінних різних типів, що використовують одну і ту ж область пам'яті. Об'єднання подібно структурі, однак в кожний момент часу об'єднання може зберігати значення тільки одного з елементів об'єднання. Хоча доступ до цієї області пам'яті можливий з використанням будь-якого з елементів, елемент для цієї мети повинен вибиратися так, щоб отриманий результат не був безглуздим.
Для визначення даних цілого типу використовуються ключові слова char, int, short, long, які визначають діапазон значень і розмір області пам'яті, що виділяється під змінні. При оголошенні цілих типів можна використовувати ключові слова signed і unsigned, які вказують, як інтерпретується старший біт оголошуваної змінної. Якщо вказано ключове слово unsigned, то старший біт інтерпретується як частина числа, в іншому випадку старший біт інтерпретується як знаковий. У разі відсутності ключового слова unsigned ціла змінна вважається знаковою. У тому випадку, якщо специфікатор типу складається з ключового типу signed або unsigned і далі слідує ідентифікатор змінної, то вона буде розглядатися як змінна типу int. Відзначимо, що ключові слова signed і unsigned не обов'язкові.
Змінна типу char (signed char) займає в пам'яті 1 байт, при цьому старший біт зберігає інформацію про знак числа: 0 відповідає позитивному числу, 1 - негативному. Біти з 0-го по 6-й використовуються для запису значення числа. Запис у кожен з цих бітів значення 1 відповідає найбільшому позитивному числу, рівному 127, при цьому старший біт встановлений в 0. Таке уявлення цілих чисел називається прямим кодом. Для зберігання негативних чисел використовується представлення чисел, зване додатковим кодом.
Завдання
Завдання 1
Код програми
# include conio.h
# include lt; stdlib.h gt;
# include locale
# include lt; iostream gt;
//using namespace std; std :: cout; std :: cin; main ()
{setlocale (LC_ALL, RUSSIAN ); (time (NULL)); lt; lt; n raquo ;;//Заданіе1
cout lt; lt; Int lt; lt; sizeof (int) lt; lt; n lt; lt; Char lt; lt; sizeof (char ) lt; lt; n lt; lt; Long lt; lt; sizeof (long) lt; lt; n
lt; lt; Short lt; lt; sizeof (short) lt; lt; n lt; lt; Float lt; lt; sizeof (float ) lt; lt; n lt; lt;
Double lt; lt; sizeof (double) lt; lt; n lt; lt;
Long double lt; lt; sizeof (long double); i=2147483646; cout lt; lt; nзаданіе 3.1 n raquo ;; ( n% d , i); ( n% d , ++ i); a, b, c; cout lt; lt; nзаданіе 3.2 n raquo ;;=2147483646;=2147483645;=a + b; ( n% d , c); t=5000; cout lt; lt; nзаданіе 3.3 n raquo ;; ( n% c , t); ( n% d , t); ( n% u , t); short us;// завдання 4short ss; a1=- 126; unsigned char a2=254; signed short int a3=- 32000; unsigned long int a4=63000; double a5=1.3456; ( nzadanie 4 ); ( nspec %% d ); ( nchar =% d , a1); ( nunsigned char =% d , a2 ); ( nsigned short int =% d , a3); ( nunsigned long int =% d , a4); ( ndouble =% d , a5); ( nspec %% c ); ( nchar =% c , a1); ( nunsigned char =% c , a2); ( nsigned short int =% c , a3); ( laquo ; nunsigned long int =% c , a4); ( ndouble =% c , a5); ( nspec %% u ); ( nchar =% u , a1); ( nunsigned char =% u , a2); ( nsigned short int =% u , a3); ( nunsigned long int =% u , a4); ( ndouble= % u , a5); ( nspec %% f ); ( nchar =% f , a1); ( nunsigned char =% f , a2); ( nsigned short int =% f , a3 * +10000000000); ( nunsigned long int =% f , a4); ( ndouble =% f , a5); lt; lt; nПрісвоенія різних типів raquo ;;=a2; lt; lt; nChar=int lt; lt; a1;=a5; lt; lt; nChar=float lt; lt; a1;=- 126; a2=254; a5=1.3456;=a1; lt; lt; nInt=char lt; lt; a2;=a5; lt; lt; nint=float lt; lt; a2;=- 126; a2=254; a5=1.3456;=a1; lt; lt; nFloat=char lt; lt; a5;=a2; lt; lt; nFloat=int lt; lt; a5;
//printf ( nspec %% s );
//printf ( nchar =% 10s | nunsigned char =% 5s | nsigned short int =% 5s | nunsigned long int =% 5s | ndouble =% 5s , a1, a2, a3, a4, a5);