stdfloat.h версия stdint.h - PullRequest
       2

stdfloat.h версия stdint.h

8 голосов
/ 06 ноября 2010

Какие стандартные соглашения об именах и / или математические библиотеки вы используете?В настоящее время я использую

#include <stdint.h>
typedef float  float32_t;
typedef double float64_t;
/*! ISO C99: 7.18 Integer types 8, 16, 32, or 64 bits
intN_t = two’s complement signed integer type with width N, no padding bits.
uintN_t = an unsigned integer type with width N.
floatN_t = N bit IEE 754 float.

        uintN_t             intN_t              floatN_t
bits    unsigned-integer    signed-integer      IEE754 float
8       
16      unsigned short      short               ??"half"
32      unsigned            int                 float
64      unsigned long       long                double
128                                             ?? "Long double" "quad" ??*/

, но, как вы видите, мне еще предстоит определиться с математической библиотекой.Оригинальный вопрос: Рекомендация для небольшой математической библиотеки с прямым соглашением об именах.

Кто-нибудь знает о каких-либо небольших библиотеках C с простыми соглашениями об именах?Это то, что я сейчас использую:

typedef unsigned short UInt16; typedef short    Int16;
typedef unsigned       UInt32; typedef int      Int32; typedef float  Float32;
typedef unsigned long  UInt64; typedef long int Int64; typedef double Float64;

Что вы используете ??

Ответы [ 2 ]

2 голосов
/ 06 ноября 2010

Ну, так как ваш вопрос также помечен C ++, я собираюсь предложить Boost.Integer .Если вы не заинтересованы в решениях C ++, удалите этот тег из своего вопроса.

0 голосов
/ 06 ноября 2010

Какие аспекты должна охватывать библиотека? «Простое» именование только типов данных? Тогда просто следуйте своим собственным определениям. Если вы не ограничены типами данных, вы можете использовать практически любую математическую библиотеку, поскольку typedef - это просто «индивидуализированные» имена для хорошо известных типов данных;)

...