argcとargvのアドレスが12バイト離れているのはなぜですか?
私のコンピューター(Linuxを実行する64ビットIntel)で次のプログラムを実行しました。 #include <stdio.h> void test(int argc, char **argv) { printf("[test] Argc Pointer: %p\n", &argc); printf("[test] Argv Pointer: %p\n", &argv); } int main(int argc, char **argv) { printf("Argc Pointer: %p\n", &argc); printf("Argv Pointer: %p\n", &argv); printf("Size of &argc: %lu\n", sizeof (&argc)); printf("Size of &argv: %lu\n", sizeof (&argv)); test(argc, argv); return 0; …