ruleline.c
来自「国外网站上的一些精典的C程序」· C语言 代码 · 共 62 行
C
62 行
/*** RULER.C(PP) - A utility to create text ruler lines**** R.F. Pels. Dec. 1993. Placed in public domain.*/#include <string.h>#include <stdio.h>#include "snip_str.h"#if defined(__cplusplus) && __cplusplus extern "C" {#endifchar * rule_line(char * s, unsigned short len, short units, char * digits, char filler){ /* If possible, initialize directly with correct value! */ short whichdigit = 0; short digitlen = strlen(digits); unsigned short i; memset(s, filler, len); /* Fill string with all filler */ s[len] = NUL; /* Tack on an ASCIIZ */ for (i = 0; i < len; i += units) { s[i] = digits[whichdigit]; /* Put in digit */ whichdigit++; /* Add 1 and reset to 0 if... */ whichdigit %= digitlen; /* ...bigger than length of digits*/ } return s;}#if defined(__cplusplus) && __cplusplus }#endif#ifdef TESTchar text[41] = "abcdefghijabcdefhijkabcdefghijabcdefghij", ruler[41];main(void){ puts(text); printf("%s\n\n", rule_line(ruler, 40, 1, "123", ' ')); puts(text); printf("%s\n\n", rule_line(ruler, 40, 1, "12345", ' ')); puts(text); printf("%s\n\n", rule_line(ruler, 40, 1, "1234567890", ' ')); puts(text); printf("%s\n\n", rule_line(ruler, 40, 5, "0123456789", ' ')); puts(text); printf("%s\n\n", rule_line(ruler, 40, 10, "1234567890", ' ')); return 0;}#endif /* TEST */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?