C语言中的文件格式化读写函数
- 格式:pdf
- 大小:360.72 KB
- 文档页数:2
C语言中的输入输出函数总结.docC语言中的输入输出函数是程序中非常重要的部分,主要负责对数据的输入和输出进行处理。
在输入时,我们需要将外部数据读取到程序中进行内部处理,而输出则需要将程序内部处理过的结果输出到外部。
1. scanf函数:用于从标准输入设备(键盘)中读取输入数据并格式化。
2. printf函数:用于将输出数据按照设置的格式输出到标准输出设备(屏幕)上。
5. puts函数:用于将一个字符串输出到标准输出设备上,并自动写入换行符。
8. fgets函数:用于从指定文件中读取一行字符串。
这些函数都需要包含stdio.h头文件才能使用。
下面我们对这些函数进行简要介绍:1. scanf函数scanf函数的语法为:scanf(“格式字符串”,变量名1,变量名2,……);其中格式字符串用来指定输入的数据类型和格式,变量名用来接收输入的数据。
例如,要输入一个整数可以使用如下代码:int num;scanf("%d",&num);2. printf函数3. getchar函数getchar函数的语法为:getchar(),用于从标准输入设备中读取一个字符。
例如,要读取一个字符并输出可以使用如下代码:char c = getchar();printf("c=%c",c);5. puts函数char str[] = "hello world";puts(str);fputs函数的语法为:fputs(字符串,文件指针),用于将一个字符串输出到指定文件中。
FILE *fp;char str[]="hello world";fp=fopen("test.txt","w");fputs(str,fp);fclose(fp);总结:C语言中的输入输出函数可以处理各种数据类型,方便快捷地进行输入输出操作。
c语言字符串格式化函数
在C语言中,字符串格式化函数是一种非常重要的函数。
它们允许我们将不同类型的数据转换为字符串,并使用一些格式指定符号来控制输出的样式。
C语言中最常用的字符串格式化函数是printf()函数。
它允许我们将数据转换为字符串,并使用一些格式指定符号来控制输出的样式。
下面是一些常用的格式指定符号:
- %d: 以10进制形式输出整数。
- %x: 以16进制形式输出整数。
- %o: 以8进制形式输出整数。
- %f: 以浮点数形式输出数值。
- %c: 输出单个字符。
- %s: 输出字符串。
- %p: 输出指针地址。
除了printf()函数外,C语言中还有其他一些字符串格式化函数,例如sprintf()函数和snprintf()函数。
这些函数与printf()函数
类似,但它们输出的结果是存储在字符串中的,而不是直接输出到屏幕上。
在使用字符串格式化函数时,我们需要注意一些安全性问题。
由于格式化字符串可以根据不同的参数输出不同的内容,因此它们很容易受到缓冲区溢出攻击。
为了避免这种情况,我们可以使用安全版本的字符串格式化函数,如snprintf()函数,它允许我们指定输出的
最大长度。
总之,在C语言中,字符串格式化函数是非常有用的函数,它们允许我们将不同类型的数据转换为字符串,并使用一些格式指定符号来控制输出的样式。
但我们需要注意安全性问题,以避免缓冲区溢出攻击。
(一)输入输出常用函数1,printf(1)有符号int%[-][+][0][width][.precision][l][h] d-:左对齐+:正数前加‘+’0:右对齐,acwidth<width,左补零.precision:至少输出位数。
若实际的位数>.precision,按实际输出,否者左边补零(2)无符号int%[-][#][0][width][.precision][l][h] u|o|x|X#:”%o %x/X”输出0,0x,0X.precision:同上,TC/BC包含0x/X,VC下不包含(3)实数输出%[-][+][#][0][width][.precision][l][L] f|e|E|g|G#:必须输出小数点.precision:小数位数(四舍五入)(4)字符和字符串的输出%[-][0][width] c %[-][0][width] [.precision] s.precision:S的前precision位2,scanf%[*][width] [l][h]TypeWith:指定输入数据的宽度,遇空格、Tab、\n结束*:抑制符scanf(“%2d%*2d%3d”,&num1,&num2) 输入123456789\n;num1==12,num2==567.注意:(1)指定width时,读取相应width位,但按需赋值Scanf(“%3c%3c”,&ch1,&ch2)输入a bc d efg ch1==a ch2==d(2)%c 输入单字符时“空格、转义字符”均是有效字符(二)ascll字符/字符串/文件函数1;字符非格式化输入函数(1)int getchar(void) 接受字符,以回车结束,回显(2)int getc(FILE*stream) 从stream中接受字符,以回车结束,回显stream=stdin时,(1)==(2)(3)int getche(void) 直接读取字符,回显conio.h(4)int getchar(void) 直接读取字符,不回显conio.h注意:(1,2)对于回车键返回‘\n’(3,4)对于回车键返回‘\r’2;字符/串非格式化输出函数(1)int putchar(int c) 正常返回字符代码值,出错返回EOF(2)int putc(int c,FILE*stream) 正常返回字符代码值,出错返回EOF stream==stdout(1)=(2)(3)int puts(char*stream) 自动回车换行1;字符串的赋值#include< string.h memory.h >Void *memset (void *s, char ch, unsigned n)将以S为首地址的,一片连续的N个字节内存单元赋值为CH.Void *memcpy ( void *d, void*s, unsigned n)将以S为首地址的一片连续的N个字节内存单元的值拷贝到以D为首地址的一片连续的内存单元中。
c语言中读取文件大小的函数摘要:1.文件读取概述2.C语言中读取文件大小的函数a.fseek函数b.ftell函数c.fgetpos函数d.setpos函数3.函数使用示例4.总结正文:在C语言中,读取文件大小是一个常见的操作。
文件大小是指文件在磁盘上存储的字节数。
在处理文件时,了解文件的大小是很重要的。
本篇文章将介绍C语言中读取文件大小的函数。
1.文件读取概述在C语言中,有多种函数可以实现文件读取。
这些函数包括fopen、fclose、fread、fwrite等。
然而,这些函数并不能直接提供文件大小信息。
要获取文件大小,需要使用特定的函数。
2.C语言中读取文件大小的函数在C语言中,有四个函数可以用来读取文件大小:fseek、ftell、fgetpos 和setpos。
这四个函数都可以获取文件的大小,但它们的实现方式略有不同。
a.fseek函数fseek函数用于在文件中设置读取位置。
通过该函数,可以将文件读取指针定位到文件末尾,从而获取文件大小。
fseek函数的原型如下:```coff_t fseek(FILE *stream, off_t offset, int whence);```其中,`stream`是文件指针,`offset`是要移动的偏移量,`whence`是移动的基准。
要获取文件大小,可以使用以下代码:```cFILE *file = fopen("example.txt", "rb");if (file == NULL) {printf("Error opening file.");return 1;}fseek(file, 0, SEEK_END); // 将文件指针移动到文件末尾long file_size = ftell(file); // 获取文件大小printf("File size: %ld bytes", file_size);fclose(file);```b.ftell函数ftell函数用于获取当前文件读取指针的位置。
对文件的读和写是最常用的文件操作。
在C语言中提供了多种文件读写的函数:·字符读写函数:fgetc和fputc·字符串读写函数:fgets和fputs·数据块读写函数:fread和fwrite·格式化读写函数:fscanf和fprinf随着每次数据的读取,文件流指针fp都作相应的移动使用以上函数都要求包含头文件stdio.h。
例子都来自msdn1 fprintf——Print formatted data to a stream#include <stdio.h>#include <process.h>FILE *stream;void main( void ){int i = 10;double fp = 1.5;char s[] = "this is a string";char c = '\n';stream = fopen( "fprintf.out", "w" );fprintf( stream, "%s%c", s, c );fprintf( stream, "%d\n", i );fprintf( stream, "%f\n", fp );fclose( stream );system( "type fprintf.out" );}Outputthis is a string101.5000002 fscanf——Read formatted data from a stream#include <stdio.h>FILE *stream;void main( void ){long l;float fp;char s[81];char c;stream = fopen( "fscanf.out", "w+" );if( stream == NULL )printf( "The file fscanf.out was not opened\n" );else{fprintf( stream, "%s %ld %f %c", "a-string",65000, 3.14159, 'x' );/* Set pointer to beginning of file: */fseek( stream, 0L, SEEK_SET );/* Read data back from file: */fscanf( stream, "%s", s );fscanf( stream, "%ld", &l );fscanf( stream, "%f", &fp );fscanf( stream, "%c", &c );/* Output data read: */printf( "%s/n", s );printf( "%ld/n", l );printf( "%f/n", fp );printf( "%c/n", c );fclose( stream );}}Outputa-string650003.141590x3 fread——Reads data from a stream4 fwrite——Writes data to a stream读数据块函数调用的一般形式为:fread(buffer,size,count,fp);写数据块函数调用的一般形式为:fwrite(buffer,size,count,fp);其中:buffer 是一个指针,在fread函数中,它表示存放输入数据的首地址。
⾃⼰动⼿写C语⾔格式化输出函数(⼀)printf系列函数,包括fprintf、sprintf函数等,其功能是将C语⾔的所有基本数据类型按⽤户要求进⾏格式化输出。
printf函数⼏乎是所有学习C语⾔的⼈接触到的第⼀个函数,是C语⾔标准中使⽤频率最⾼的函数。
printf函数是C语⾔标准函数中最著名的可变参数函数,看见printf这个函数名,就想起了C语⾔的说法⼀点也不过分,因此,可以说是C语⾔标准函数中的最具标志性的函数。
printf系列函数。
在DOS环境下,这⼀系列输出函数涵盖了PC机所能⽤到的所有输出设备,所以printf系列函数也是C语⾔中最复杂的函数。
当然,随着DOS时代的结束,不仅printf系列函数的作⽤减弱了,就连C语⾔本⾝也被压缩到了最⼩的应⽤领域。
本⽂写的sprintfA函数,也是应⼀个⼩友要求写的⼏个函数之⼀,包括我昨天发布的《》中的FloatToStr函数,是⽤来学习⽤的。
之所以取名为sprintfA,不仅是区别系统本⾝的sprintf函数,同时也因为在Windows下,A表⽰的是传统的ANSI函数。
因为在Windows下,printf系列函数也“与时俱进”了,如wprintf 等就是在宽字符环境下的输出函数。
由于我在sprintfA函数中使⽤了Windows的宽字符转换函数,因此该函数只适⽤于Windows环境。
由于sprintfA函数代码⽐较长,将分为多篇⽂章发布,《》⼀⽂中的代码也应算作⼀篇:⼀、数据定义:1 typedef struct2 {3 INT type; // 数据长度类型4 INT width; // 数据最⼩宽度5 INT precision; // 数据精度6 BOOL left; // 是否居左7 BOOL zero; // 是否前导零8 INT decimals; // 浮点数: 1强制⼩数位; 16进制: -1: 0x, 1: 0X9 INT negative; // 符号:-1: '-'; 1: '+'10 LPSTR param; // 参数指针11 }FormatRec;1213 typedef long long LLONG, *PLLONG;14 typedef unsigned long long ULLONG, *PULLONG;1516#define TYPE_CHAR 017#define TYPE_SHORT 118#define TYPE_GENERAL 219#define TYPE_LONG 320#define TYPE_LLONG 42122#define PTR_SIZE sizeof(VOID*)23#define TypeSize(size) (((size + PTR_SIZE - 1) / PTR_SIZE) * PTR_SIZE)2425#define TS_PTR PTR_SIZE26#define TS_CHAR TypeSize(sizeof(CHAR))27#define TS_WCHAR TypeSize(sizeof(WCHAR))28#define TS_SHORT TypeSize(sizeof(SHORT))29#define TS_INT TypeSize(sizeof(INT))30#define TS_LONG TypeSize(sizeof(LONG))31#define TS_LLONG TypeSize(sizeof(LLONG))32#define TS_FLOAT TypeSize(sizeof(FLOAT))33#define TS_DOUBLE TypeSize(sizeof(double))34#define TS_EXTENDED TypeSize(sizeof(EXTENDED))3536#define CHAR_SPACE ' '37#define CHAR_ZERO '0'38#define CHAR_POS '+'39#define CHAR_NEG '-'4041#define HEX_PREFIX_U "0X"42#define HEX_PREFIX_L "0x"4344#define MAX_DIGITS_SIZE 40TYPE_XXXX是数据类型标记,对应于FormatRec.type字段。
c语言中读取文件大小的函数摘要:1.文件读取概述2.C语言中读取文件大小的函数a.fseek函数b.ftell函数c.fscanf函数d.getchar函数3.文件读取函数的注意事项4.总结正文:在C语言中,读取文件大小是一个常见的操作。
文件大小是指文件在磁盘上存储的字节数。
为了读取文件大小,我们可以使用以下函数:1.fseek函数fseek函数用于改变文件指针的位置。
通过该函数,我们可以将文件指针定位到文件末尾,从而读取文件大小。
fseek函数的原型如下:```cvoid fseek(FILE *stream, long offset, int origin);```参数说明:- `stream`: 文件指针- `offset`: 偏移量,正数为从文件头向文件尾偏移,负数为从文件尾向文件头偏移- `origin`: 基准位置,0表示文件头,1表示当前位置,2表示文件尾2.ftell函数ftell函数用于获取当前文件指针的位置。
通过该函数,我们可以获取文件末尾的偏移量,从而计算文件大小。
ftell函数的原型如下:```clong ftell(FILE *stream);```参数说明:- `stream`: 文件指针3.fscanf函数fscanf函数用于从文件中读取数据。
通过该函数,我们可以读取文件大小并将其存储在变量中。
fscanf函数的原型如下:```cint fscanf(FILE *stream, const char *format, ...);```参数说明:- `stream`: 文件指针- `format`: 格式控制字符串- `...`: 可变参数列表,用于存储读取到的数据为了读取文件大小,我们可以设置格式控制字符串为`%ld`,然后调用fscanf函数。
需要注意的是,fscanf函数可能会遇到文件结束符或读取错误,因此需要检查返回值以确认读取是否成功。
4.getchar函数getchar函数用于从文件中读取一个字符。
c语言文件读写从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。
ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。
ASCII码文件可在屏幕上按字符显示。
二进制文件是按二进制的编码方式来存放文件的。
二进制文件虽然也可在屏幕上显示,但其内容无法读懂。
C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。
输入输出字符流的开始和结束只由程序控制而不受物理符号(如回车符)的控制。
因此也把这种文件称作“流式文件”。
1、文件的打开与关闭文件在进行读写操作之前要先打开,使用完毕要关闭。
所谓打开文件,实际上是建立文件的各种有关信息,并使文件指针指向该文件,以便进行其它操作。
关闭文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作。
在C语言中,文件操作都是由库函数来完成的。
在本章内将介绍主要的文件操作函数。
在stdio.h文件中,有结构体类型FILE。
typeof struct{ short level; /*缓冲区“满”或“空”的程度*/unsigned flags; /*文件状态标志*/char fd; /*文件描述符*/unsigned char hold; /*如无缓冲区不读取字符*/short bsize; /*缓冲区的大小*/unsigned char *buffer; /*数据缓冲区的位置*/unsigned ar *curp; /*指针、当前的指向*/unsigned istemp; /*临时文件、指示器*/short token; /*用于有效性检查*/} FILE;可以定义文件类型数组,例如:FILE f[5];可以定义文件类型指针,例如:FILE *fp;——fp指向某一个文件的结构体变量。
如果有n个文件,一般应设n个指针变量,使它们分别指向n个文件,以实现对文件的访问。
1.1 文件的打开(fopen函数)fopen()函数用来打开一个文件,其调用的一般形式为:文件指针名=fopen(文件名,使用文件方式);其中,“文件指针名”必须是被说明为FILE 类型的指针变量;“文件名”是被打开文件的文件名;“使用文件方式”是指文件的类型和操作要求;“文件名”是字符串常量或字符串数组。
C语言函数fopen函数简介函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库:<stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。
若果文件打开失败则返回NULL,并把错误代码存在errno 中。
一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理。
参数说明:参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。
mode有下列几种形态字符串:r 打开只读文件,该文件必须存在。
r+ 打开可读写的文件,该文件必须存在。
rb+ 读写打开一个二进制文件,只允许读写数据。
rt+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。
若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。
若文件不存在则建立该文件。
a 以附加的方式打开只写文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
(EOF符保留)a+ 以附加方式打开可读写的文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
(原来的EOF符不保留)wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
ofstream的使⽤⽅法--超级精细。
C++⽂件写⼊、读出函数(转)ofstream的使⽤⽅法ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间;在C++中,有⼀个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的⽂件I/O,stream这个类有两个重要的运算符:1、插⼊器(<<) 向流输出数据。
⽐如说系统有⼀个默认的标准输出流(cout),⼀般情况下就是指的显⽰器,所以,cout<<"Write Stdout"<<’\n’;就表⽰把字符串"Write Stdout"和换⾏字符(’\n’)输出到标准输出流。
2、析取器(>>) 从流中输⼊数据。
⽐如说系统有⼀个默认的标准输⼊流(cin),⼀般情况下就是指的键盘,所以,cin>>x;就表⽰从标准输⼊流中读取⼀个指定类型(即变量x的类型)的数据。
在C++中,对⽂件的操作是通过stream的⼦类fstream(file stream)来实现的,所以,要⽤这种⽅式操作⽂件,就必须加⼊头⽂件fstream.h。
下⾯就把此类的⽂件操作过程⼀⼀道来。
⼀、打开⽂件 在fstream类中,有⼀个成员函数open(),就是⽤来打开⽂件的,其原型是:void open(const char* filename,int mode,int access);参数:filename: 要打开的⽂件名mode: 要打开⽂件的⽅式access: 打开⽂件的属性打开⽂件的⽅式在类ios(是所有流式I/O类的基类)中定义,常⽤的值如下:ios::app: 以追加的⽅式打开⽂件ios::ate: ⽂件打开后定位到⽂件尾,ios:app就包含有此属性ios::binary: 以⼆进制⽅式打开⽂件,缺省的⽅式是⽂本⽅式。
两种⽅式的区别见前⽂ios::in: ⽂件以输⼊⽅式打开(⽂件数据输⼊到内存)ios::out: ⽂件以输出⽅式打开(内存数据输出到⽂件)ios::nocreate:不建⽴⽂件,所以⽂件不存在时打开失败ios::noreplace:不覆盖⽂件,所以打开⽂件时如果⽂件存在失败ios::trunc: 如果⽂件存在,把⽂件长度设为0 可以⽤“或”把以上属性连接起来,如ios::out|ios::binary 打开⽂件的属性取值是:0:普通⽂件,打开访问1:只读⽂件2:隐含⽂件4:系统⽂件 可以⽤“或”或者“+”把以上属性连接起来,如3或1|2就是以只读和隐含属性打开⽂件。
题目:深入解析C语言中的scanf函数用法1. 前言在C语言中,scanf函数是一个非常重要的输入函数,它可以根据指定的格式从标准输入中读取数据。
本文将深度解析scanf函数的用法,包括参数说明、格式控制、常见问题及解决方法等内容。
2. scanf函数的基本用法在C语言中,scanf函数的基本用法如下:```cint scanf(const char *format, ...);```其中,format是格式化字符串,用来指定输入数据的格式,... 表示可以接受任意数量的参数,这些参数通常是指针变量,用来接收输入的数据。
3. 格式化字符串格式化字符串是scanf函数中最重要的部分,它指定了输入数据的格式,包括数据类型、限定符等信息。
常见的格式化字符串包括:%d、%f、%s等,分别用来读取整数、浮点数、字符串等类型的数据。
4. 参数说明在调用scanf函数时,需要传入与格式化字符串相对应的参数,这些参数通常是指针变量,用来接收输入的数据。
例如:```cint num;scanf("%d", &num);```在这个例子中,&num 是一个int类型的指针变量,用来接收输入的整数数据。
5. 格式控制在使用scanf函数时,需要注意格式控制的问题,包括输入数据的合法性、格式化字符串的正确性等。
在读取整数时,应该加上错误处理,以避免非法输入造成的问题。
6. 常见问题及解决方法在使用scanf函数时,常见的问题包括输入数据不匹配、输入格式错误等。
针对这些问题,可以通过清空输入缓冲区、检查返回值等方法来解决。
7. 个人观点在实际编程中,scanf函数是一个非常实用的输入函数,但也存在一些限制和问题。
在使用时,需要仔细考虑格式化字符串、参数传递等问题,以确保程序的稳定性和健壮性。
8. 总结与回顾通过本文的详细解析,相信读者对scanf函数的用法有了更深入的理解。
在实际编程中,要灵活运用scanf函数,处理好输入数据的格式化和错误处理等问题。
C语言基本的输入输出格式1. 引言C语言是一种广泛应用于系统程序开发和嵌入式系统的高级编程语言。
在C语言中,输入和输出是程序与用户或外部设备之间进行交互的重要方式。
本文将详细介绍C语言中基本的输入输出格式,包括标准输入输出函数、格式化输入输出函数以及文件输入输出函数。
2. 标准输入输出函数C语言提供了一些标准的输入输出函数,用于从键盘读取用户输入或将输出显示在屏幕上。
2.1 printf函数printf函数用于将格式化的数据输出到标准输出设备(通常是屏幕)。
它的基本语法如下:int printf(const char *format, ...);其中,format是一个字符串,用于指定输出的格式,后面的参数是要输出的数据。
下面是一些常用的格式控制符:•%d:以十进制形式输出整数。
•%f:以浮点数形式输出。
•%c:以字符形式输出。
•%s:以字符串形式输出。
示例代码:#include <stdio.h>int main() {int age = 20;float height = 1.75;char gender = 'M';char name[] = "John";printf("Name: %s\n", name);printf("Age: %d\n", age);printf("Height: %.2f\n", height);printf("Gender: %c\n", gender);return 0;}运行结果:Name: JohnAge: 20Height: 1.75Gender: M2.2 scanf函数scanf函数用于从标准输入设备(通常是键盘)读取数据。
它的基本语法如下:int scanf(const char *format, ...);其中,format是一个字符串,用于指定输入的格式,后面的参数是用于接收输入数据的变量。
简述c语言输入、输出函数格式C语言中的输入输出函数主要由标准库提供,通常通过`<stdio.h>` 头文件引入。
以下是C 语言中常见的输入和输出函数及其基本格式:输入函数:1. scanf() 函数:-用于从标准输入(通常是键盘)读取输入。
-格式:`scanf("格式字符串", &变量1, &变量2, ...);`-示例:读取整数`int num; scanf("%d", &num);`输出函数:1. printf() 函数:-用于将输出格式化为字符串并打印到标准输出(通常是屏幕)。
-格式:`printf("格式字符串", 变量1, 变量2, ...);`-示例:输出整数`int num = 10; printf("Number: %d\n", num);`2. puts() 函数:-用于输出字符串并自动添加换行符。
-格式:`puts("字符串");`-示例:`puts("Hello, World!");`3. putchar() 函数:-用于输出一个字符到标准输出。
-格式:`putchar('字符');`-示例:`putchar('A');`4. putc() 函数:-用于输出一个字符到指定的文件。
-格式:`putc('字符', 文件指针);`-示例:`putc('B', filePointer);`这些函数提供了基本的输入和输出操作,通过格式化字符串控制输出的格式。
在使用这些函数时,需要确保提供正确的格式字符串和相应的变量。
输入函数使用`&`符号获取变量的地址,而输出函数则直接使用变量的值。
C语言函数fopen函数简介函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库:<stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。
若果文件打开失败则返回NULL,并把错误代码存在errno 中。
一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理。
参数说明:参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。
mode有下列几种形态字符串:r 打开只读文件,该文件必须存在。
r+ 打开可读写的文件,该文件必须存在。
rb+ 读写打开一个二进制文件,只允许读写数据。
rt+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。
若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。
若文件不存在则建立该文件。
a 以附加的方式打开只写文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
(EOF符保留)a+ 以附加方式打开可读写的文件。
若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
(原来的EOF符不保留)wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。