tfmt.c

来自「su 的源代码库」· C语言 代码 · 共 44 行

C
44
字号
/* Copyright (c) Colorado School of Mines, 2006.*//* All rights reserved.                       */#include	"sftest.h"static char	*Mystr = "abc";#if __STD_Cint myprint(Sfio_t* f, Void_t* v, Sffmt_t* fe)#elseint myprint(f, v, fe)Sfio_t*		f;Void_t*		v;Sffmt_t*	fe;#endif{	switch(fe->fmt)	{	case 's' :		*((char**)v) = Mystr;		fe->flags |= SFFMT_VALUE;		return 0;	}	return 0;}MAIN(){	char	buf1[1024], buf2[1024];	Sffmt_t	fe;	memset(&fe, 0, sizeof(Sffmt_t));	fe.version = SFIO_VERSION;	fe.form = "%1$s";	fe.extf = myprint;	sfsprintf(buf1,sizeof(buf1),"%s",Mystr);	sfsprintf(buf2,sizeof(buf2),"%!", &fe);	if(strcmp(buf1,buf2) != 0)		terror("Failed testing $position\n");	return 0;}

⌨️ 快捷键说明

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