Difference between memory addresses of variables is constant
问题 I ran the following code and this is the output I got: #include <stdio.h> int main() { int x = 3; int y = x; printf("%d\n", &x); printf("%d\n", &y); getchar(); return 0; } Output: 3078020 3078008 Now, the output changes every time I run the program, but the difference between the location of x to the location of y is always 12. I wondered why. Edit: I understand why the difference is constant. What I don't understand is why the difference is specifically 12, and why the memory address of y,