string-opt-17.c
来自「linux下编程用 编译软件」· C语言 代码 · 共 46 行
C
46 行
/* Copyright (C) 2003 Free Software Foundation. Test strcpy optimizations don't evaluate side-effects twice. Written by Jakub Jelinek, June 23, 2003. */typedef __SIZE_TYPE__ size_t;extern char *strcpy (char *, const char *);extern int memcmp (const void *, const void *, size_t);extern void abort (void);extern void exit (int);size_ttest1 (char *s, size_t i){ strcpy (s, "foobarbaz" + i++); return i;}size_tcheck2 (void){ static size_t r = 5; if (r != 5) abort (); return ++r;}voidtest2 (char *s){ strcpy (s, "foobarbaz" + check2 ());}intmain (void){ char buf[10]; if (test1 (buf, 7) != 8 || memcmp (buf, "az", 3)) abort (); test2 (buf); if (memcmp (buf, "baz", 4)) abort (); exit (0);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?