talign.c

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

C
63
字号
/* Copyright (c) Colorado School of Mines, 2006.*//* All rights reserved.                       */#include	"sftest.h"static ssize_t	Read;static int	Count;#if __STD_Cssize_t readf(Sfio_t* f, Void_t* buf, size_t n, Sfdisc_t* disc)#elsessize_t readf(f,buf,n,disc)Sfio_t*		f;Void_t*		buf;size_t		n;Sfdisc_t*	disc;#endif{	Count += 1;	Read += (n = sfrd(f,buf,n,disc));	return n;}Sfdisc_t	Disc = {readf, (Sfwrite_f)0, (Sfseek_f)0, (Sfexcept_f)0, (Sfdisc_t*)0};MAIN(){	Sfio_t*	f;	int	i;	char*	s;	char	buf[1024], rbuf[128*1024];	if(!(f = sfopen(NIL(Sfio_t*), tstfile(0), "w")) )		terror("Opening to write\n");	for(i = 0; i < sizeof(buf); ++i)		buf[i] = 'a' + (i%26);	for(i = 0; i < 1024; ++i)		if(sfwrite(f,buf,sizeof(buf)) != sizeof(buf) )			terror("Write error\n");	sfclose(f);	if(!(f = sfopen(NIL(Sfio_t*), tstfile(0), "r")) )		terror("Opening to read\n");	sfsetbuf(f,rbuf,sizeof(rbuf));	sfdisc(f,&Disc);	for(i = 0;; i += 64)	{	sfseek(f,(Sfoff_t)i,0);		if(!(s = sfreserve(f,619,1)) )			break;		sfread(f,s,64);	}	if(Read != 1024*sizeof(buf) )		terror("Count=%d Read=%d\n", Count, Read);	TSTEXIT(0);}

⌨️ 快捷键说明

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