integer.c

来自「一套接口」· C语言 代码 · 共 54 行

C
54
字号
#include "fmt.h"#include "assert.h"#include "mem.h"#define T Integer_Ttypedef int *T;T Integer_new(int n) {	T integer;	NEW(integer);	*integer = n;	return integer;}int Integer_get(T integer) {	assert(integer);	return *integer;}int Integer_put(T integer, int n) {	int prev;	assert(integer);	prev = *integer;	*integer = n;	return prev;}int Integer_cmp(T i1, T i2) {	assert(i1);	assert(i2);	if (*i1 < *i2)		return -1;	else if (*i1 > *i2)		return +1;	else		return 0;}void Integer_fmt(int code, va_list *app,	int put(int c, void *cl), void *cl,	unsigned char flags[], int width, int precision) {	char buf[44];	T integer;	assert(app && flags);	integer = va_arg(*app, T);	assert(integer); 	Fmt_putd(buf, Fmt_sfmt(buf, sizeof buf, "%d", *integer),		put, cl, flags, width, precision);}

⌨️ 快捷键说明

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