Inttypes.h
inttypes.h является заголовочным файлом стандартной библиотеки Си и соответствующего API. Он был добавлен в версии 1999 года ISO-стандарта языка Си (известного как C99). Он включает в себя заголовочный файл stdint.h. В нём определён ряд макросов для использования с семействами функций printf и scanf и функции для работы с типом intmax_t.
Макросы
Заголовочный файл объявляет макросы для спецификаторов формата для функций:[1]
fprintf для типов со знаком:
PRIdN PRIdLEASTN PRIdFASTN PRIdMAXN PRIdPTR
PRIiN PRIiLEASTN PRIiFASTN PRIiMAXN PRIiPTR
fprintf для беззнаковых типов:
PRIoN PRIoLEASTN PRIoFASTN PRIoMAXN PRIoPTR
PRIuN PRIuLEASTN PRIuFASTN PRIuMAXN PRIuPTR
PRIxN PRIxLEASTN PRIxFASTN PRIxMAXN PRIxPTR
PRIXN PRIXLEASTN PRIXFASTN PRIXMAXN PRIXPTR
и подобные для функции fscanf с префиксом SCN.
Каждый из этих макросов раскрывается в строковую константу, содержащую соответствующий спецификатор.[1]
Функции
#include <inttypes.h>
intmax_t imaxabs (intmax_t j);
Функция вычисляет абсолютное значение для целого j. Если результат не может быть вычислен, поведение функции не определено.
#include <inttypes.h>
intmax_t imaxdiv (intmax_t numer, intmax_t denom);
Функция получает результат деления и остаток от деления. Если одно из них не может быть вычислено, то поведение функции не определено.
#include <inttypes.h>
intmax_t strtoimax (const char * restrict nptr, char ** restrict endptr, int base);
uintmax_t strtoumax (const char * restrict nptr, char ** restrict endptr, int base);
Функции эквивалентны strtol, strtoll, strtoul, strtoull, за исключением того, что строка конвертируется в intmax_t и uintmax_t соответственно. Функции возвращают преобразованное значение, если его можно представить. В противном случае возвращается один из макросов INTMAX_MAX, INTMAX_MIN или UINTMAX_MAX, а в errno записывается значение ERANGE.
#include <inttypes.h>
#include <stddef.h>
intmax_t wcstoimax (const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base);
uintmax_t wcstoumax (const wchar_t * restrict nptr, wchar_t ** restrict endptr, int base);
Поведение этих функций эквивалентно strtoimax() и strtoumax().[1]
См. также
Ссылки
inttypes.h: Целочисленные типы фиксированного размера — основные определения, The Single UNIX® Specification, выпуск 7 от The Open Group (англ.)
Примечания
- ↑ 1 2 3 ISO/IEC 9899:1999. Дата обращения: 30 июля 2011. Архивировано 22 августа 2011 года.
Дополнительные источники
- inttypes.h — заголовочный файл для Visual C++ (требует совместимый файл stdint.h).
- Определение констант и переменных явных типов
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.