bitsetv-print.c

来自「GNU的词法/语法分析器bison源码」· C语言 代码 · 共 75 行

C
75
字号
/* Bitset vectors.   Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.This file is part of Bison.Bison is free software; you can redistribute it and/or modify it underthe terms of the GNU General Public License as published by the FreeSoftware Foundation; either version 2, or (at your option) any laterversion.Bison is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY orFITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public Licensefor more details.You should have received a copy of the GNU General Public Licensealong with Bison; see the file COPYING.  If not, write to the FreeSoftware Foundation, 51 Franklin Street, Fifth Floor, Boston, MA02110-1301, USA.  */#ifdef HAVE_CONFIG_H#include "config.h"#endif#include <stdlib.h>#include "bitsetv-print.h"/*--------------------------------------------------------.| Display the MATRIX array of SIZE bitsets of size SIZE.  |`--------------------------------------------------------*/voidbitsetv_matrix_dump (FILE * out, const char *title, bitsetv bset){  bitset_bindex i, j;  bitset_bindex hsize = bitset_size (bset[0]);  /* Title. */  fprintf (out, "%s BEGIN\n", title);  /* Column numbers. */  fputs ("   ", out);  for (i = 0; i < hsize; ++i)    putc (i / 10 ? '0' + i / 10 : ' ', out);  putc ('\n', out);  fputs ("   ", out);  for (i = 0; i < hsize; ++i)    fprintf (out, "%d", (int) (i % 10));  putc ('\n', out);  /* Bar. */  fputs ("  .", out);  for (i = 0; i < hsize; ++i)    putc ('-', out);  fputs (".\n", out);  /* Contents. */  for (i = 0; bset[i]; ++i)    {      fprintf (out, "%2lu|", (unsigned long int) i);      for (j = 0; j < hsize; ++j)	fputs (bitset_test (bset[i], j) ? "1" : " ", out);      fputs ("|\n", out);    }  /* Bar. */  fputs ("  `", out);  for (i = 0; i < hsize; ++i)    putc ('-', out);  fputs ("'\n", out);  /* End title. */  fprintf (out, "%s END\n\n", title);}

⌨️ 快捷键说明

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