Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
BSON_DECIMAL128_T(3)		     libbson		    BSON_DECIMAL128_T(3)

BSON Decimal128 Abstraction

SYNOPSIS
	#include <bson/bson.h>

	#define BSON_DECIMAL128_STRING 43
	#define BSON_DECIMAL128_INF "Infinity"
	#define BSON_DECIMAL128_NAN "NaN"

	typedef struct {
	#if BSON_BYTE_ORDER == BSON_LITTLE_ENDIAN
	   uint64_t low;
	   uint64_t high;
	#elif BSON_BYTE_ORDER == BSON_BIG_ENDIAN
	   uint64_t high;
	   uint64_t low;
	#endif
	} bson_decimal128_t;

DESCRIPTION
     The  bson_decimal128_t  structure	represents  the IEEE-754 Decimal128 data
     type.  The  type  bson_decimal128_t  is  an  aggregate  that  contains  two
     uint64_ts,  named	high  and  low. The declaration and layout order between
     them depends on the endian order of the target platform:  low  will  always
     correspond  to the low-order bits of the Decimal128 object, while high cor-
     responds to the high-order bits. The bson_decimal128_t always has a size of
     sixteen (16), and can be bit-cast to/from a _Decimal128.

EXAMPLE
	#include <bson/bson.h>
	#include <stdio.h>

	int
	main (int argc, char *argv[])
	{
	   char string[BSON_DECIMAL128_STRING];
	   bson_decimal128_t decimal128;

	   bson_decimal128_from_string ("100.00", &decimal128);
	   bson_decimal128_to_string (&decimal128, string);
	   printf ("Decimal128 value: %s\n", string);

	   return 0;
	}

AUTHOR
     MongoDB, Inc

COPYRIGHT
     2009-present, MongoDB, Inc.

1.30.8				  Aug 27, 2026		    BSON_DECIMAL128_T(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=bson_decimal128_t&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help