hex.input_dec_int

dst[:n] = the signed decimal number read from input (two’s complement, mod 16^n).
Reads an optional leading ‘-’, then ASCII ‘0’..’9’ until a ‘\n’ or ‘\0’ (EOF)
terminator; jumps to error on any other byte. Inverse of hex.print_dec_int.

Signature

def input_dec_int n, dst, error @ sign_hi, minus, loop, valid_hi, terminator, digit_char, add_digit, finish, digit, byte, neg, end { ... }

Defined in hex/input.fj — lines 132–167 (view on GitHub).

Complexity

  • Time: ~ d(n(10@+39)) + (d+1)(7@+11) + @+4n    (d = number of digits; estimate)

  • Space: ~ n(10.5@+149) + 10@+130                (estimate)

See the complexity glossary for what @, w, dw, dbit, n mean.

Requires init

The following must be initialised before this macro is invoked:

  • hex.init

Source

Depends on


← Previous: hex.input_dec_uint