Домашняя страница библиотеки_c AVR

Синтаксис языка C

Библиотека языка C GNU glibc

 Страницы развития библиотеки_с AVR

Главная страница

Инструкция пользователя

Содержание библиотеки_c

Часто задаваемые вопросы

Содержание по алфавиту

Демонстрационные проекты


<inttypes.h>: Преобразования Целочисленных типов


Детальное Описание

 #include <inttypes.h> 

Этот заголовочный файл включает определения целочисленных типов точной размерности <stdint.h>, и расширяет их дополнительными средствами. В настоящее время, расширения включают два дополнительных целочисленных типа, которые могут содержать указатель "far" (то есть указатель, который может обратиться более чем к 64 KB памяти).

Так же здесь включаются опции форматирования для функций printf и scanf, которые поддержаны <stdio.h>: Стандартные средства IO. Поскольку библиотека не поддерживает полный диапазон спецификаторов от ISO 9899:1999, здесь перечислены только осуществлённые преобразования. Для каждого из типов форматирования имеется своя макрокоманда, определенная в <stdint.h>, позволяющая форматировать объект нужного типа в функциях printf() или scanf(). Пример:

    #include <inttypes.h>
    uint8_t smallval; // маленькое_значение
    int32_t longval;  // длинное_значение
    ...
    printf("The hexadecimal value of smallval is " PRIx8
           ", the decimal value of longval is " PRId32 ".\n",
           smallval, longval);
// значение переменной smallval – выведется, как беззнаковое целое в шестнадцатеричном представлении в нижнем регистре. 
// значение переменной longval – выведется, как длинное целое со знаком. 

Указатели для доступа к >64K памяти

typedef int32_t 

int_farptr_t

typedef uint32_t 

uint_farptr_t

Макроопределения для спецификаций форматирования функций printf и scanf

Для C++, включаются, только если __STDC_LIMIT_MACROS определён до включения <inttypes.h>.

#define 

PRId8   "d"

#define 

PRIdLEAST8   "d"

#define 

PRIdFAST8   "d"

#define 

PRIi8   "i"

#define 

PRIiLEAST8   "i"

#define 

PRIiFAST8   "i"

#define 

PRId16   "d"

#define 

PRIdLEAST16   "d"

#define 

PRIdFAST16   "d"

#define 

PRIi16   "i"

#define 

PRIiLEAST16   "i"

#define 

PRIiFAST16   "i"

#define 

PRId32   "ld"

#define 

PRIdLEAST32   "ld"

#define 

PRIdFAST32   "ld"

#define 

PRIi32   "li"

#define 

PRIiLEAST32   "li"

#define 

PRIiFAST32   "li"

#define 

PRIdPTR   PRId16

#define 

PRIiPTR   PRIi16

#define 

PRIo8   "o"

#define 

PRIoLEAST8   "o"

#define 

PRIoFAST8   "o"

#define 

PRIu8   "u"

#define 

PRIuLEAST8   "u"

#define 

PRIuFAST8   "u"

#define 

PRIx8   "x"

#define 

PRIxLEAST8   "x"

#define 

PRIxFAST8   "x"

#define 

PRIX8   "X"

#define 

PRIXLEAST8   "X"

#define 

PRIXFAST8   "X"

#define 

PRIo16   "o"

#define 

PRIoLEAST16   "o"

#define 

PRIoFAST16   "o"

#define 

PRIu16   "u"

#define 

PRIuLEAST16   "u"

#define 

PRIuFAST16   "u"

#define 

PRIx16   "x"

#define 

PRIxLEAST16   "x"

#define 

PRIxFAST16   "x"

#define 

PRIX16   "X"

#define 

PRIXLEAST16   "X"

#define 

PRIXFAST16   "X"

#define 

PRIo32   "lo"

#define 

PRIoLEAST32   "lo"

#define 

PRIoFAST32   "lo"

#define 

PRIu32   "lu"

#define 

PRIuLEAST32   "lu"

#define 

PRIuFAST32   "lu"

#define 

PRIx32   "lx"

#define 

PRIxLEAST32   "lx"

#define 

PRIxFAST32   "lx"

#define 

PRIX32   "lX"

#define 

PRIXLEAST32   "lX"

#define 

PRIXFAST32   "lX"

#define 

PRIoPTR   PRIo16

#define 

PRIuPTR   PRIu16

#define 

PRIxPTR   PRIx16

#define 

PRIXPTR   PRIX16

#define 

SCNd16   "d"

#define 

SCNdLEAST16   "d"

#define 

SCNdFAST16   "d"

#define 

SCNi16   "i"

#define 

SCNiLEAST16   "i"

#define 

SCNiFAST16   "i"

#define 

SCNd32   "ld"

#define 

SCNdLEAST32   "ld"

#define 

SCNdFAST32   "ld"

#define 

SCNi32   "li"

#define 

SCNiLEAST32   "li"

#define 

SCNiFAST32   "li"

#define 

SCNdPTR   SCNd16

#define 

SCNiPTR   SCNi16

#define 

SCNo16   "o"

#define 

SCNoLEAST16   "o"

#define 

SCNoFAST16   "o"

#define 

SCNu16   "u"

#define 

SCNuLEAST16   "u"

#define 

SCNuFAST16   "u"

#define 

SCNx16   "x"

#define 

SCNxLEAST16   "x"

#define 

SCNxFAST16   "x"

#define 

SCNo32   "lo"

#define 

SCNoLEAST32   "lo"

#define 

SCNoFAST32   "lo"

#define 

SCNu32   "lu"

#define 

SCNuLEAST32   "lu"

#define 

SCNuFAST32   "lu"

#define 

SCNx32   "lx"

#define 

SCNxLEAST32   "lx"

#define 

SCNxFAST32   "lx"

#define 

SCNoPTR   SCNo16

#define 

SCNuPTR   SCNu16

#define 

SCNxPTR   SCNx16


 

 

 

 

 

 

 

Документация Макроопределений

#define PRId16   "d"

десятичный формат printf для int16_t

#define PRId32   "ld"

 десятичный формат printf для int32_t

#define PRId8   "d"

 десятичный формат printf для int8_t

#define PRIdFAST16   "d"

 десятичный формат printf для int_fast16_t

#define PRIdFAST32   "ld"

 десятичный формат printf для int_fast32_t

#define PRIdFAST8   "d"

 десятичный формат printf для int_fast8_t

#define PRIdLEAST16   "d"

 десятичный формат printf для r int_least16_t

#define PRIdLEAST32   "ld"

 десятичный формат printf для int_least32_t

#define PRIdLEAST8   "d"

 десятичный формат printf для int_least8_t

#define PRIdPTR   PRId16

 десятичный формат printf для intptr_t

#define PRIi16   "i"

целочисленный формат printf для int16_t

#define PRIi32   "li"

 целочисленный формат printf для int32_t

#define PRIi8   "i"

 целочисленный формат printf для int8_t

#define PRIiFAST16   "i"

 целочисленный формат printf для int_fast16_t

#define PRIiFAST32   "li"

 целочисленный формат printf для int_fast32_t

#define PRIiFAST8   "i"

 целочисленный формат printf для int_fast8_t

#define PRIiLEAST16   "i"

 целочисленный формат printf для int_least16_t

#define PRIiLEAST32   "li"

 целочисленный формат printf для int_least32_t

#define PRIiLEAST8   "i"

 целочисленный формат printf для int_least8_t

#define PRIiPTR   PRIi16

 целочисленный формат printf для intptr_t

#define PRIo16   "o"

восьмеричный формат printf для uint16_t

#define PRIo32   "lo"

 восьмеричный формат printf для uint32_t

#define PRIo8   "o"

 восьмеричный формат printf для uint8_t

#define PRIoFAST16   "o"

 восьмеричный формат printf для uint_fast16_t

#define PRIoFAST32   "lo"

 восьмеричный формат printf для uint_fast32_t

#define PRIoFAST8   "o"

 восьмеричный формат printf для uint_fast8_t

#define PRIoLEAST16   "o"

 восьмеричный формат printf для uint_least16_t

#define PRIoLEAST32   "lo"

 восьмеричный формат printf для uint_least32_t

#define PRIoLEAST8   "o"

 восьмеричный формат printf для uint_least8_t

#define PRIoPTR   PRIo16

 восьмеричный формат printf для uintptr_t

#define PRIu16   "u"

десятичный формат printf для uint16_t

#define PRIu32   "lu"

десятичный формат printf для uint32_t

#define PRIu8   "u"

 десятичный формат printf для uint8_t

#define PRIuFAST16   "u"

 десятичный формат printf для uint_fast16_t

#define PRIuFAST32   "lu"

 десятичный формат printf для uint_fast32_t

#define PRIuFAST8   "u"

 десятичный формат printf для uint_fast8_t

#define PRIuLEAST16   "u"

 десятичный формат printf для uint_least16_t

#define PRIuLEAST32   "lu"

 десятичный формат printf для uint_least32_t

#define PRIuLEAST8   "u"

 десятичный формат printf для uint_least8_t

#define PRIuPTR   PRIu16

 десятичный формат printf для uintptr_t

#define PRIX16   "X"

 шестнадцатеричный формат верхнего регистра printf для uint16_t

#define PRIx16   "x"

шестнадцатеричный формат printf для uint16_t

#define PRIX32   "lX"

 шестнадцатеричный формат верхнего регистра printf для uint32_t

#define PRIx32   "lx"

шестнадцатеричный формат printf для uint32_t

#define PRIX8   "X"

 шестнадцатеричный формат верхнего регистра printf для uint8_t

#define PRIx8   "x"

шестнадцатеричный формат printf для uint8_t

#define PRIXFAST16   "X"

 шестнадцатеричный формат верхнего регистра printf для uint_fast16_t

#define PRIxFAST16   "x"

шестнадцатеричный формат printf для uint_fast16_t

#define PRIXFAST32   "lX"

 шестнадцатеричный формат верхнего регистра printf для uint_fast32_t

#define PRIxFAST32   "lx"

шестнадцатеричный формат printf для uint_fast32_t

#define PRIXFAST8   "X"

 шестнадцатеричный формат верхнего регистра printf для uint_fast8_t

#define PRIxFAST8   "x"

шестнадцатеричный формат printf для uint_fast8_t

#define PRIXLEAST16   "X"

 шестнадцатеричный формат верхнего регистра printf для uint_least16_t

#define PRIxLEAST16   "x"

шестнадцатеричный формат printf для uint_least16_t

#define PRIXLEAST32   "lX"

 шестнадцатеричный формат верхнего регистра printf для uint_least32_t

#define PRIxLEAST32   "lx"

шестнадцатеричный формат printf для uint_least32_t

#define PRIXLEAST8   "X"

 шестнадцатеричный формат верхнего регистра printf для uint_least8_t

#define PRIxLEAST8   "x"

шестнадцатеричный формат printf для uint_least8_t

#define PRIXPTR   PRIX16

 шестнадцатеричный формат верхнего регистра printf для uintptr_t

#define PRIxPTR   PRIx16

шестнадцатеричный формат printf для uintptr_t

#define SCNd16   "d"

десятичный формат scanf для int16_t

#define SCNd32   "ld"

 десятичный формат scanf для int32_t

#define SCNdFAST16   "d"

 десятичный формат scanf для int_fast16_t

#define SCNdFAST32   "ld"

 десятичный формат scanf для int_fast32_t

#define SCNdLEAST16   "d"

 десятичный формат scanf для int_least16_t

#define SCNdLEAST32   "ld"

 десятичный формат scanf для int_least32_t

#define SCNdPTR   SCNd16

 десятичный формат scanf для intptr_t

#define SCNi16   "i"

формат scanf  универсального целого числа для int16_t

#define SCNi32   "li"

формат scanf универсального целого числа для int32_t

#define SCNiFAST16   "i"

формат scanf универсального целого числа для int_fast16_t

#define SCNiFAST32   "li"

формат scanf универсального целого числа для int_fast32_t

#define SCNiLEAST16   "i"

формат scanf универсального целого числа для int_least16_t

#define SCNiLEAST32   "li"

формат scanf универсального целого числа для int_least32_t

#define SCNiPTR   SCNi16

format scanf универсального целого числа для intptr_t

#define SCNo16   "o"

восьмеричный формат scanf для uint16_t

#define SCNo32   "lo"

восьмеричный формат scanf для uint32_t

#define SCNoFAST16   "o"

восьмеричный формат scanf для uint_fast16_t

#define SCNoFAST32   "lo"

восьмеричный формат scanf для uint_fast32_t

#define SCNoLEAST16   "o"

восьмеричный формат scanf для uint_least16_t

#define SCNoLEAST32   "lo"

восьмеричный формат scanf для uint_least32_t

#define SCNoPTR   SCNo16

восьмеричный формат scanf для uintptr_t

#define SCNu16   "u"

десятичный формат scanf для uint16_t

#define SCNu32   "lu"

 десятичный формат scanf для uint32_t

#define SCNuFAST16   "u"

 десятичный формат scanf для uint_fast16_t

#define SCNuFAST32   "lu"

 десятичный формат scanf для uint_fast32_t

#define SCNuLEAST16   "u"

 десятичный формат scanf для uint_least16_t

#define SCNuLEAST32   "lu"

 десятичный формат scanf для uint_least32_t

#define SCNuPTR   SCNu16

 десятичный формат scanf для uintptr_t

#define SCNx16   "x"

шестнадцатеричный формат scanf для uint16_t

#define SCNx32   "lx"

шестнадцатеричный формат scanf для uint32_t

#define SCNxFAST16   "x"

шестнадцатеричный формат scanf для uint_fast16_t

#define SCNxFAST32   "lx"

шестнадцатеричный формат scanf для uint_fast32_t

#define SCNxLEAST16   "x"

шестнадцатеричный формат scanf для uint_least16_t

#define SCNxLEAST32   "lx"

шестнадцатеричный формат scanf для uint_least32_t

#define SCNxPTR   SCNx16

шестнадцатеричный формат scanf для uintptr_t


 

 

 

 

 

 

 

 Документация Typedef

typedef int32_t int_farptr_t

 целочисленный тип со знаком, который может держать указатель > 64 KB памяти

typedef uint32_t uint_farptr_t

целочисленный тип без знака, который может держать указатель > 64 KB памяти


 

 

 

 

 

 

 

Automatically generated by Doxygen 1.5.2 on 21 Dec 2007.

Hosted by uCoz