Few programmers consider the issues around formatted I/O and typedefs. A user-defined integer type might be any type supported by the implementation, even a type larger than unsigned long long
, for example:
Code Block |
---|
typedef mytypedefuint_fast128_t uint_fast128mytypedef_t; |
Furthermore, the definition of user defined types may change (which may be one of the reasons the user-defined type was created to begin with). This creates a problem using these types with formatted output functions (such as printf()
) and formatted input functions (such as scanf()
) (see FIO00-A. Take care when creating format strings).
...