I have always assumed that malloc returns an allocated block of memory with an address that is 16byte aligned for 64bit systems using both Visual Studio and gcc. However, I've been reading some contradictory articles on the issue. The MSDN site is very clear on this but the GNU documentation is a lot more "nuanced".
Any clarification would be most helpful.
Great answers here: