bp.c

来自「sdcc是为51等小型嵌入式cpu设计的c语言编译器支持数种不同类型的cpu」· C语言 代码 · 共 60 行

C
60
字号
/* Base pointer tests, specifically for the z80. */#include <testfwk.h>#include <string.h>intverifyBlock(char *p, char val, int len){  while (len--) {    if (*p++ != val) {      return 0;    }  }  return 1;}intspoil(int a){  return a;}#if defined(SDCC_mcs51) || defined(SDCC_pic16)// test devices with much less memory#define ABOVE_MEM_SIZE       30#define ABOVE_MEM_TEST_SIZE  17#define BELOW_MEM_SIZE       20#define BELOW_MEM_TEST_SIZE   7#else#define ABOVE_MEM_SIZE      400#define ABOVE_MEM_TEST_SIZE  17#define BELOW_MEM_SIZE      200#define BELOW_MEM_TEST_SIZE  74#endifvoidtestBP(void){  char above[ABOVE_MEM_SIZE];  int f;  char below[BELOW_MEM_SIZE];  memset(above, ABOVE_MEM_TEST_SIZE, sizeof(above));  memset(below, BELOW_MEM_TEST_SIZE, sizeof(below));  ASSERT(verifyBlock(above, ABOVE_MEM_TEST_SIZE, sizeof(above)));  ASSERT(verifyBlock(below, BELOW_MEM_TEST_SIZE, sizeof(below)));  f = spoil(-5);  spoil(f);  ASSERT(verifyBlock(above, ABOVE_MEM_TEST_SIZE, sizeof(above)));  ASSERT(verifyBlock(below, BELOW_MEM_TEST_SIZE, sizeof(below)));}

⌨️ 快捷键说明

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