BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Turbo C++ Version 1.0 Programmer's Guide
Автор ""
Размер 211728 Байт
Страница 14 из 30
СКАЧАТЬ КНИГУ ЦЕЛИКОМ



 Объявление типов      Таблица 1.13
 -----------------------------------------------------------
    type t;  Объект типа type

    type array[10];  Десять типов: array[0]-array[9]

    type *ptr;  ptr это указатель типа

    type &ref=t;  ref = ссылка на тип (C++)

    type func(void);  func возвращает значение типа type

    void func1(type t);   func1 принимает параметр типа type

struct st (type t1; type t2);  структура st содержит два типа
 ------------------------------------------------------------

     Ниже показано, как производные типы могут быть объявле-
ны в пределах класса:

class cl (*   // класс cl содержит указатель ptr на тип, плюс
   // функцию, принимающую параметр type (C++)
       type *ptr;
       public:
       void func(type*);

 Тип void

     Void это специальный спецификатор типа,  указывающий на
отсутствие каких-либо значений.  Он задается в следующих си-
туациях:

 - Пустой список параметров в объявлении функции:

    int func(void);   // функция не принимает аргументов

     С++ обрабатывает  0  специальным  образом.  См.  раздел
"Объявления  и прототипы" на стр.60 и примеры кода на стр.61
оригинала.

 - Когда объявленная функция не возвращает значений:

    void func(int n); // возвращаемое значение отсутствует

     - В качестве родового указателя.  Указатель на void яв-
ляется родовым указателем на все что угодно:

    void *ptr;  // далее ptr может быть установлен на любой
      // объект

 - Выражения с проверкой типа:

    extern int errfunc();    // возвращает код ошибки
    ...
    (void) errfunc();     // значение возврата теряется
     Фундаментальные типы

     signed и unsigned - это модификаторы, применяемые к ин-
тегральным типам.

     Фундаментальные спецификаторы типа создаются из следую-

                           - 41 -
щих ключевых слов:

    char     int      signed
    double   long     unsigned
    float    short

     На базе   этих   ключевых   слов  вы  можете  построить
интегральные типы и типы с плавающей точкой, которые в сово-
купности   называются   арифметическими  типами.  Включаемый
файлlimits.h содержит определения  диапазонов  значений  для
всех фундаментальных типов.

 Интегральные типы

     Типы char,  short,  int  и  long,  а  также их варианты
unsigned называются интегральными  типами.  Ниже  приводятся
спецификаторы  интегральных  типов  с  помещенными  в той же
строке синонимами.

 Интегральные типы      Таблица 1.14
 -----------------------------------------------------------
     char,signed char Если по умолчанию char  установлен как
signed, то это синонимы
    unsigned char
    char,unsigned char Если по умолчанию char установлен как
       unsigned, то это синонимы
    signed char
    int,signed int
    unsigned,unsigned int
    short,short int,signed short int
    unsigned short,unsigned short int
    long,long int,signed long int





unsigned long,unsigned long int ----------------------------------------------------------- С типами char,short, int или long можно использовать либо signed, либо unsigned. Если же использовать только сами ключевые слова signed или unsigned, то они означают signed int или unsigned int, соответственно. В отсутствие слова unsigned обычно принимается тип signed. Исключение возникаетв случае char. Turbo C++ позво- ляет устанавливатьдля char умолчание signed или unsigned. (Если вы не устанавливали это умолчание сами, то это умолча- ние будет равно signed). Если умолчание установлено в значе- ние unsigned, то объявление char ch объявит ch как unsigned. Для переопределение этогоумолчания нужно задать signed char ch. Аналогичным образом, если для char установлено умолчание signed, то для объявления ch как unsigned char следует явно указать unsigned char ch. С int можно использовать либо long, либо short. Если ключевые словаlong или short использованы сами по себе, то они означают long int или short int, соответственно. ANSI C не устанавливаетразмеры внутреннего представле- ния этих типов, за исключением того, что размеры данных short, int и long образуют неубывающую последователь- ность"short <= int <= long". Все три типа могут быть одина- ковыми. Это существенно для написания мобильных кодов, пред- назначенных для переноса на другую аппаратную базу. В Turbo C++ типы int и short эквивалентны, и имеют оба длину 16 бит. long представляет 32-битовые объекты. Их раз- новидность с ключевым словом signed хранятся вформате допол- нения до двух, причем в качестве знакового бита используется MSB (наиболее значащий бит): 0 означает положительное число, - 42 - 1 - отрицательное (что объясняет диапазоне, приведенные в таблице 1.9). В версиях unsigned дляхранения числа использу- ются все биты, что дает диапазон 0-(2^n-1), где n = 8,16 или 32. Типы с плавающей точкой Представления и множества принимаемых значений для ти- пов с плавающей точкой зависят от конкретной реализации; то есть каждая новая реализация компилятора С свободна опреде- лять их по-своему. TurboC++ использует форматы с плавающей точкой IEEE. (Приложение А, "Стандарты ANSI, зависимые от реализации" содержит более подробную информацию по этому вопросу.) float иdoubleпредставляют собой 32- и 64-разрядные типы данных с плавающей точкой, соответственно. long можно ис- пользовать с double для получения 80-разрядной точности представления идентификатора с плавающей точкой: long double test_case, например. Распределяемая для типов с плавающей точкой память по- казана в таблице 1.9. Стандартные преобразования При использовании арифметических выражений, таких как a +b, где a и b - это данные различных арифметических типов, Turbo C++ выполняет передвычислениемопределенные внутренние преобразования. Эти стандартные преобразования включают в себя перевод "низших" типов в "высшие" в интересах точности представления и непротиворечивости данных. Ниже приводятся шаги, выполняемые Turbo C++для преобра- зования операндов в арифметических выражениях: 1. Все малые интегральные типы преобразовываются сог- ласно таблице 1.15. После этого любые два значения, участву- ющие в операции, становятся либо Int (включая модификаторы long и unsigned), либо double, float или long double. 2. Если один из операндов имеет тип long double, то второй операнд также будет преобразован к типу long double. 3. Иначе, если один из операндов имеет тип double, то второй операнд также будет преобразован к типу double. 4. Иначе, если один из операндов имеет тип float, то второй операнд также будет преобразован к типу float. 5. Иначе, если один из операндов имеет тип unsigned long, то второй операнд также будет преобразован к типу unsigned long. 6. Иначе, если один из операндов имеет тип long, то второй операнд также будет преобразован к типу long. 7. Иначе, если один из операндов имеет тип unsigned, то второй операнд также будет преобразован к типу unsigned. 8. В противном случае оба операнда имеют тип Int. Результат вычисления выражения будет того же типа, что и оба участвующих в нем операнда.


Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

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

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.