Разработка на C/C++: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
(Новая: =Типы данных= ==Концепция== '''Тип данных определяет:''' * ''внутреннее представление'' данных в памяти комп...)
 
(Типы данных)
Строка 5: Строка 5:
 
* ''множество значений'', которые могут принимать величины этого типа;
 
* ''множество значений'', которые могут принимать величины этого типа;
 
* ''операции и функции'', которые можно применять к величинам этого типа;
 
* ''операции и функции'', которые можно применять к величинам этого типа;
 +
==Типы данных==
 +
Все типы данных языка С++ можно разделить на ''основные'' и ''составные''.
 +
 +
===Шесть основных типов данных===
 +
Основные (''стандартные'') типы данных часто называют ''арифметическими'', поскольку их можно использовать в арифметических операциях. Для описания основных типов определены следующие '''ключевые слова''':
 +
 +
* int (целый);
 +
* char (символьный);
 +
* wchar_t (расширенный символьный);
 +
* bool (логический);
 +
* float (вещественный);
 +
* double (вещественный с двойной точностью);
 +
 +
Первые четыре типа называют челочисленными (''целыми''), а последние два - ''типами с плавающей точкой.'' Код, который формирует компилятор для обработки целых величин, отличается от кода для величин с плавающей точкой.
 +
 +
Существует четыре ''спецификатора типа'', уточняющих внутреннее представление и диапазон значений стандартных типов:
 +
 +
* short (короткий)
 +
* long (длинный)
 +
* signed (знаковый)
 +
* unsigned (беззнаковый)
 +
 +
====Целый тип (int)====
 +
Размер типа '''int''' не определяется стандартом, а зависит от компьютера и компилятора. Для 16-разрядного процессора под величины этого типа отводится 2 байта, для 32-разрядного - 4 байта.
 +
 +
При использовании типа со спецификатором ''short'' под число отводится 2 байта '''независимо от разрядности процессора'''. 
 +
 +
При использовании типа со спецификатором ''long'' под число отводится 4 байта.
 +
 +
====Символьный тип (char)====
 +
Под величину символьного типа отводится количество байт, достаточное для размещения любого символа из набора символов для данного компьютера. Как правило это 1 байт. Этот тип может быть как со знаком, так и без знака. В величинах со знаком можно хранить значения в диапазоне от '''-128''' до '''127'''. При использования спецификатора ''unsigned'' значения могут находиться в пределах от '''0''' до '''255'''.
 +
 +
====Расширенный символьный тип (wchar_t)====
 +
 +
Тип ''wchar_t'' предназначен для работы с набором символов, для кодировки которых недостаточно 1 байта, например, Unicode. Размеры этого типа зависят от реализации; как правило, он соответствует типу ''short''. Строковые константы типа ''wchar_t'' записываются с префиксом '''L''', например '''L"Preved"'''.
  
 
=Задачи=
 
=Задачи=

Версия 13:08, 15 октября 2008

Типы данных

Концепция

Тип данных определяет:

  • внутреннее представление данных в памяти компьютера;
  • множество значений, которые могут принимать величины этого типа;
  • операции и функции, которые можно применять к величинам этого типа;

Типы данных

Все типы данных языка С++ можно разделить на основные и составные.

Шесть основных типов данных

Основные (стандартные) типы данных часто называют арифметическими, поскольку их можно использовать в арифметических операциях. Для описания основных типов определены следующие ключевые слова:

  • int (целый);
  • char (символьный);
  • wchar_t (расширенный символьный);
  • bool (логический);
  • float (вещественный);
  • double (вещественный с двойной точностью);

Первые четыре типа называют челочисленными (целыми), а последние два - типами с плавающей точкой. Код, который формирует компилятор для обработки целых величин, отличается от кода для величин с плавающей точкой.

Существует четыре спецификатора типа, уточняющих внутреннее представление и диапазон значений стандартных типов:

  • short (короткий)
  • long (длинный)
  • signed (знаковый)
  • unsigned (беззнаковый)

Целый тип (int)

Размер типа int не определяется стандартом, а зависит от компьютера и компилятора. Для 16-разрядного процессора под величины этого типа отводится 2 байта, для 32-разрядного - 4 байта.

При использовании типа со спецификатором short под число отводится 2 байта независимо от разрядности процессора.

При использовании типа со спецификатором long под число отводится 4 байта.

Символьный тип (char)

Под величину символьного типа отводится количество байт, достаточное для размещения любого символа из набора символов для данного компьютера. Как правило это 1 байт. Этот тип может быть как со знаком, так и без знака. В величинах со знаком можно хранить значения в диапазоне от -128 до 127. При использования спецификатора unsigned значения могут находиться в пределах от 0 до 255.

Расширенный символьный тип (wchar_t)

Тип wchar_t предназначен для работы с набором символов, для кодировки которых недостаточно 1 байта, например, Unicode. Размеры этого типа зависят от реализации; как правило, он соответствует типу short. Строковые константы типа wchar_t записываются с префиксом L, например L"Preved".

Задачи

Задача 1

Задание

Напишите  рекурсивную функцию, которая принимает  массив и размер массива как аргументы  и возвращает наибольший элемент массива.  Функция должна  
рекращать свою работу  и возвращаться, если принимаемый массив  имеет один элемент.

Код