Skip to content

Files

Latest commit

 

History

History
11 lines (6 loc) · 565 Bytes

AssignmentAddressToInteger.md

File metadata and controls

11 lines (6 loc) · 565 Bytes

Pattern: Assigning pointer to integer

Issue: -

Description

Assigning a pointer to an integer (int/long/etc) is not portable across different platforms and compilers. For example in 32-bit Windows and Linux they are same width, but in 64-bit Windows and Linux they are of different width. In worst case you end up assigning 64-bit address to 32-bit integer. The safe way is to store addresses only in pointer types (or typedefs like uintptr_t).

Further Reading