欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C语言标准库(2)--#include(stdio.h)

程序员文章站 2022-03-14 08:33:36
C语言标准库(2)--#include...
C语言标准库(2)--#include 2014/11/26 by jxlijunhao 在这个头文件中包含了,单字符处理函数和字符串处理函数,标准输入输入操作,流操作,从文件读取,写入函数,块I/O 等。下面记录的部分
标准输入输出:
int getchar ( void ); //从标准输入中读取一个字符
int putchar ( int character );//向标准输出中输出

流操作:
int putc ( int character, FILE * stream );//向一个输入流中写入字符
int getc ( FILE * stream ); //从输出流中读一个字符

跟上面功能等价的是
int fgetc ( FILE * stream );
int fputc ( int character, FILE * stream );

FILE * fopen ( const char * filename, const char * mode );//打开文件
"r"   : 读取数据
"w" :  假设打开的文件名本来就存在,那么原来的内容会被清空,然后重新写入新的内容
"r+":  读取/更新
"w+": 写入/更新,若文件存在,那么旧的内容会被清空
"a+":  向文件中加入新的内容

int fclose ( FILE * stream );

下面是一个简单的例子,从一个标准输入中输入数据,并将其保存到文件中
#include
int main()
{
	//从键盘中读入一组数据,若输入中有‘#’,则结束,并将其保存到文本文件中
	char c;
	FILE *pFile;
	pFile=fopen("myFile.txt","w+");
	while (1)
	{
		c=getchar();
		if (c=='#')break;
		fputc(c,pFile);
	}
	fclose(pFile);

	//读取文件中的数据,并显示出来
	pFile=fopen("myFile.txt","r");
	if (pFile!=NULL)
	{
		while (c!=EOF)
		{
			c=fgetc(pFile);
			putchar(c);
		}
	}
	fclose(pFile);

}

块I/O操作:文件定位
int fseek ( FILE * stream, long int offset, int origin ); //文件定位
第三个参数开始,从哪个位置开始计算 offset,有三个可选的值: SEEK_SET: 从文件的开始 SEEK_CUR:从文件的当位置 SEEK_END: 从文件末尾 (注意是offset要设定为负数,从-1开始)

下面的例子:将"THIS IS A TSTE FILE"中第5个位置处改成小写
int main()
{
	FILE *pFile;
	pFile=fopen("test.txt","wb");
	fputs("THIS IS A TEST FILE.",pFile);
	fseek(pFile,5,SEEK_SET); //从文件起始
	fputs("i",pFile);
	fclose(pFile);
}