co_debug.c

来自「Fax and soft modem source code. - Slow m」· C语言 代码 · 共 39 行

C
39
字号
#include <stdio.h>

#include "private.h"
#include "complex.h"
#include "debug.h"

co_debugger::co_debugger(int xl)
  { len = xl; ptr = 0;
    vec = new complex[len];
  }

void co_debugger::insert(complex z)
  { if (ptr < len) vec[ptr++] = z;
  }

co_debugger::~co_debugger()
  { delete vec;
  }

void co_debugger::print(char *fn)
  { FILE *fi = fopen(fn, "w");
    if (fi != NULL)
      { int n = 0;
	while (n < ptr)
	  { int n1 = n + 500;
	    if (n1 > ptr) n1 = ptr;
	    fprintf(fi, ".sp 0.5i\n");
	    fprintf(fi, "%d ... %d\n", n, n1-1);
	    fprintf(fi, ".G1 8i\n");
	    for (int i = n; i < n1; i++) fprintf(fi, "%g %g\n", vec[i].re, vec[i].im);
	    fprintf(fi, ".G2\n.bp\n");
	    n = n1;
	  }
	fclose(fi);
      }
    else fprintf(stderr, "can't create %s\n", fn);
  }

⌨️ 快捷键说明

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