📄 20000703-1.c
字号:
void abort(void);void exit(int);struct baz { char a[17]; char b[3]; unsigned int c; unsigned int d;};void foo(struct baz *p, unsigned int c, unsigned int d){ __builtin_memcpy (p->b, "abc", 3); p->c = c; p->d = d;}void bar(struct baz *p, unsigned int c, unsigned int d){ ({ void *s = (p); __builtin_memset (s, '\0', sizeof (struct baz)); s; }); __builtin_memcpy (p->a, "01234567890123456", 17); __builtin_memcpy (p->b, "abc", 3); p->c = c; p->d = d;}int main(){ struct baz p; foo(&p, 71, 18); if (p.c != 71 || p.d != 18) abort(); bar(&p, 59, 26); if (p.c != 59 || p.d != 26) abort(); exit(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -