Lo que las convenciones de nomenclatura estándar y /o bibliotecas matemáticas se utilizan? Yo actualmente uso

#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" ??*/

pero como se puede ver todavía tengo que decidir sobre una biblioteca matemática.


Pregunta Original:
Recomendación para una pequeña biblioteca matemática directa de la convención de nomenclatura.

¿Alguien sabe de alguna pequeña bibliotecas C con sencillo convenciones de nomenclatura? Esto es lo que estoy usando ahora:

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;

¿Cuál usas??

  • es <stdint.h> no está disponible en su plataforma?
  • Yo uso IMPLICIT DOUBLE PRECISION (A-H,O-Z). 🙂 Es broma, no se me queme.
  • Ok, sí, pero ahora lo que debo hacer con flotadores??
  • ¿qué necesita más información sobre los tipos de punto flotante, a continuación, la norma proporciona? Hay float, double y C99 también ha long double.
  • IEEE 754 especifica el tamaño exacto, formatos, y los resultados para los tipos de punto flotante y la aritmética. Nada, salvo muy oscuro y roto plataformas se adhiere demasiado (o al menos tratando de cumplir, con errores menores) el estándar IEEE. A menos que estés trabajando con oscurecer la antigua mainframes o tal vez un pequeño número de oscuras no-conformes Dsp, float se de 32 bits y double se de 64 bits, en los formatos estándar. Y si no lo son, no tienen manera de llegar estándar de los tipos de punto flotante excepto en la escritura de su propia suave de flotación de la biblioteca.
  • Siempre he buscado una «stdfloat.h» ha sido para punto flotante equivalentes de la conveniente INTx_C función de macros. Nunca puedo recordar si 0.0 es un flotador o un doble literal, y lo que hay que agregar a cambiar.
  • Personalmente, me gustaría asegurarse de que el tamaño es especificado, así que estoy de acuerdo con el cartel. El ‘float’, ‘doble’, ‘long double’ no es suficiente para mí. ‘long double’ puede ser cualquier cosa. Quiero especificar float128_t, NO mucho doble, que puede ser de 96 bits, 80 bits o lo que sea el compilador elige. Si no debemos tener esos tamaño de los especificadores, entonces bien podríamos volver a usar int, short y char.
  • posibles duplicados de Fija el tamaño de los tipos de punto flotante

InformationsquelleAutor GlassGhost | 2010-11-06

2 Comentarios

  1. 2

    Bien, ya que tu pregunta está etiquetada C++ así, voy a sugerir Boost.Entero. Si usted no está interesado en C++ soluciones, por favor, retire la etiqueta de que se trate.

    • Tu premisa es falsa, no se puede usar de todo, desde C. no Es un superconjunto, es un idioma diferente.
  2. -1

    Qué aspectos es el de la biblioteca de espera para cubrir? «Sencillo» de nombres de tipos de Datos sólo? A continuación, sólo tiene que ir con sus propias definiciones. Si no se limita a los tipos de datos, usted puede usar casi cualquier biblioteca matemática como typedefs son sólo «individualizado» nombres bien conocidos tipos de datos 😉

Dejar respuesta

Please enter your comment!
Please enter your name here