14 ms·
Never use fixed-size integers unless you are communicating with hardware, implementing some protocol or manipulating binary files. If some code shared between
by pajko 2y ago
Never use fixed-size integers unless you are communicating with hardware, implementing some protocol or manipulating binary files.
If some code shared between 8/16-bit and 32/64-bit architectures requires an a least 16-bit type, go for "int". If it requires an at least 32-bit type, go for "long".
Also fixed-size integers shall not be printed with standard directives like %d or %u, but the PRId32, PRIu32, PRIx32, etc... macros shall be used from inttypes.h.
- eqvinox 2y ago> ... PRId32, PRIu32, PRIx32, etc... macros shall be used from inttypes.h. Those are superseded by %w64d %w32x etc. in C23. (One of the most practically DX-improving changes in it.)