⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 streamio.cpp

📁 空战游戏flacon源码
💻 CPP
字号:
#include "streamio.h"

FILE *CStreamIO::getstream (int useout)
{
	if (useout) return out;
	return in;
}

int CStreamIO::openread (char *file, int binary)
{
	if (in) return 0;
	if (binary) in = fopen (file, "rb");
	else in = fopen (file, "r");
	if (in) ihandle = fileno (in);
	return (int) in;
}

int CStreamIO::openwrite (char *file, int binary)
{
	if (out) return 0;
	if (binary) out = fopen (file, "wb");
	else out = fopen (file, "w");
	if (out) ohandle = fileno (out);
	return (int) out;
}

int CStreamIO::closefile (int useout)
{
	if (useout) {
		if (out) fclose (out);
		out = 0;
	}
	else {
		if (in) fclose (in);
		in = 0;
	}
	return 0;
}

int CStreamIO::eof ()
{
	return feof (in);
}

int CStreamIO::getfileptr ()
{
	return ftell (in);
}

int CStreamIO::movefileptr (int offset, int origin)
{
	return fseek (in, offset, origin);
}

int CStreamIO::filesize (int useout)
{
	int	cur = ihandle;
	if (useout) cur = ohandle;
	return (filelength (cur));
}

void CStreamIO::readline (char *buffer, int length)
{
	fgets (buffer, length, in);
}

// Note: Stupid Microsoft doesn't support vfscanf function
// So have to read one variable at a time
int CStreamIO::read (char *format, void *var )
{
	int i = fscanf (in, format, var);
	return i;
}

int CStreamIO::write (char *format, ... )
{
	va_list	aptr;

	va_start (aptr, format);
	int i = vfprintf (out, format, aptr);
	va_end (aptr);
	return i;
}

⌨️ 快捷键说明

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