(保留版权,欢迎转载。请保留出处,注明原始链接!谢谢。)
1. sizeof:
sizeof(long) = {{x86: 4, x64: 8}}; sizeof(long long) = {{x86: 8, x64: 8}};
sizeof("char p[N]") = {{
void foo1 () { char p [N]; ... sizeof(p):// N };
void foo2(char p[]) { sizeof(p); // sizeof(char*) };
void foo3(char p[N]) { sizeof(p); // sizeof(char*) };
static char sp[N]; void foo4(void) { sizeof(sp); // N};
}}
2. Endian:
LSB|MSB => Intel, MSB|LSB => Network
3. Stack: (!FIXME! -- 20130206)
(High -> Low Addr)
x86: Param N, Param N - 1, ..., Param 2, Param 1 | EIP | EBP | Var 1, Var 2, Var 3 ...
x64: Param N, Param N - 1, ..., Param N - 7, Param N - 6 | RIP | RBP | Var 1, Var 2, Var 3 ...
4. stdarg.h:
va_list | va_start | va_arg | vsnprintf | va_end
implemention:?
5. setjmp.h
jmp_buf | setjmp | longjmp
implemention:?
6. string.h
memmov: [src < dst && dst < src + n] => reversed copying; else => normal copying
implemention: strstr ?