A simple question: do longs differ from architecture to architecture? I seem to recall a while back that when we went from a 32-bit machine to a 64-bit machine, the longs might differ, but as I check things now, they appear to be the same (a 64-bit integer, effectively).
I ask, because I am writing some code, which speccs in Int64s (C#), and while longs and Int64s appear to be the same at the moment, the damn autocomplete likes using longs instead of Int64s, which it sees as the same. To save myself from time, should I let it autocomplete with longs, and sleep soundly because they won’t be changing if someone comes out with a 128-bit CPU tomorrow, or should I put forth the extra effort now to ensure that they are Int64s in said code? And yes, I am aware that Int64 = long, so far as the current implementation cares.
While in C the size of
longmay vary, it is well specified in C# to be 64bit integer.