aboutsummaryrefslogtreecommitdiffstats
path: root/libj2_j2u_to_j2i.3
blob: a6cb8ca4d5e705d3e8a4744d3a5bd8ef6baf6249 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
.TH LIBJ2_J2U_TO_J2I 3 LIBJ2
.SH NAME
libj2_j2u_to_j2i \- Convert between signed and unsigned double-max precision integer

.SH SYNOPSIS
.nf
#include <libj2.h>

void \fBlibj2_j2u_to_j2i\fP(const struct libj2_j2u *\fIu\fP, struct libj2_j2i *\fIi\fP);
void \fBlibj2_j2i_to_j2u\fP(const struct libj2_j2i *\fIi\fP, struct libj2_j2u *\fIu\fP);
.fi
.PP
Link with
.IR -lj2 .

.SH DESCRIPTION
The
.BR libj2_j2u_to_j2i ()
function converts
.I u
from unsigned double-max precision
to signed double-max precision and
stored the signed integer in
.IR i .
.PP
The
.BR libj2_j2i_to_j2u ()
function converts
.I i
from signed double-max precision
to unsigned double-max precision and
stored the signed integer in
.IR u .
.PP
The arguments are assumed to be
.RI non- NULL .
.PP
.I u
and
.I i
will be represented using the same bit
sequence, by design, this means that if
.I i
is negative (for the
.BR libj2_j2u_to_j2i ()
function, this happens when
.I u
is too large to be represented by
.BR "struct libj2_j2i" ),
.I -i
and the unsigned
.I 0-u
will have the same value, that is
if some value
.I a
translates to some value
.IR b ,
the additive inverse of
.I a
translates to the additive inverse of
.IR b .

.SH RETURN VALUE
None.

.SH ERRORS
The
.BR libj2_j2u_to_j2i ()
and
.BR libj2_j2i_to_j2u ()
functions cannot fail.

.SH HISTORY
The
.BR libj2_j2u_to_j2i ()
and
.BR libj2_j2i_to_j2u ()
functions were added in version 1.1 of
.BR libj2 .

.SH SEE ALSO
.BR libj2 (7),
.BR libj2_ju_to_j2i (3)