loop-15.c

来自「linux下的gcc编译器」· C语言 代码 · 共 41 行

C
41
字号
/* Bombed with a segfault on powerpc-linux.  doloop.c generated wrong   loop count.  */voidfoo (unsigned long *start, unsigned long *end){  unsigned long *temp = end - 1;  while (end > start)    *end-- = *temp--;}intmain (void){  unsigned long a[5];  int start, end, k;  for (start = 0; start < 5; start++)    for (end = 0; end < 5; end++)      {	for (k = 0; k < 5; k++)	  a[k] = k;	foo (a + start, a + end);	for (k = 0; k <= start; k++)	  if (a[k] != k)	    abort ();	for (k = start + 1; k <= end; k++)	  if (a[k] != k - 1)	    abort ();	for (k = end + 1; k < 5; k++)	  if (a[k] != k)	    abort ();      }  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?