700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > gets fgetc fgets getc getchar putc fputc putchar puts fputs函数详讲

gets fgetc fgets getc getchar putc fputc putchar puts fputs函数详讲

时间:2019-10-04 11:26:57

相关推荐

gets fgetc fgets getc getchar putc fputc putchar puts fputs函数详讲

1.gets(由标准输入设备内读进一字符串):

头文件#include <stdio.h>

定义函数char * gets(char *s);

函数说明gets()用来从标准设备读入字符并存到参数 s 所指的内存空间, 直到出现换行字符或读到文件尾为止,

最后加上 NULL 作为字符串结束.

返回值gets()若成功则返回 s 指针, 返回 NULL 则表示有错误发生.

附加说明由于 gets()无法知道字符串 s 的大小, 必须遇到换行字符或文件结尾才会结束输入, 因此容易造成缓冲

溢出的安全性问题. 建议使用 fgets()取代.

范例参考 fgets()

2.fgetc(由文件中读取一个字符):

头文件include<stdio.h>

定义函数nt fgetc(FILE * stream);

函数说明fgetc()从参数 stream 所指的文件中读取一个字符. 若读到文件尾而无数据时便返回 EOF.

返回值getc()会返回读取到的字符, 若返回 EOF 则表示到了文件尾.

范例

#include <stdio.h> int main(void) {FILE *fp=fopen("exist", "r"); //exist表示创建的文件int c; while((c = fgetc(fp)) != EOF) printf("%c", c); fclose(fp); return 0;}

例如:exist改成1.txt,把1.txt中写字符串abc,则程序运行结果为abc

3.fgets(由文件中读取一字符串):

头文件include<stdio.h>

定义函数har * fgets(char * s, int size, FILE * stream);

函数说明fgets()用来从参数 stream 所指的文件内读入字符并存到参数 s 所指的内存空间, 直到出现换行字符、

读到文件尾或是已读了 size-1 个字符为止, 最后会加上 NULL 作为字符串结束.

返回值gets()若成功则返回 s 指针, 返回 NULL 则表示有错误发生.

范例

#include <stdio.h> int main(void) {char s[80]; fputs(fgets(s, 80, stdin), stdout); return 0;}

例如运行程序

this is a apple //输入

this is a apple //输出(通过fgets来获取从键盘输入的信息)

4.getc(由文件中读取一个字符):

头文件#include <stdio.h>

定义函数int getc(FILE * stream);

函数说明getc()用来从参数 stream 所指的文件中读取一个字符. 若读到文件尾而无数据时便返回 EOF. 虽然

getc()与 fgetc()作用相同, 但 getc()为宏定义, 非真正的函数调用.

返回值getc()会返回读取到的字符, 若返回 EOF 则表示到了文件尾.

范例参考 fgetc().

5.getchar (由标准输入设备内读进一字符):

头文件#include <stdio.h>

定义函数int getchar(void);

函数说明getchar()用来从标准输入设备中读取一个字符, 然后将该字符从 unsigned char 转换成 int 后返回.

返回值getchar()会返回读取到的字符, 若返回 EOF 则表示有错误发生.

附加说明getchar()非真正函数, 而是 getc(stdin)宏定义.

范例

#include <stdio.h> int main(void) {FILE * fp; int c, i; for(i = 0; i < 5; i++) {c = getchar(); putchar(c); } return 0;}

例如运行程序

abc //输入

abc //输出

6.putc(将一指定字符写入文件中):

定义函数int putc(int c, FILE * stream);

函数说明putc()会将参数 c 转为 unsigned char 后写入参数 stream 指定的文件中. 虽然 putc()与 fputc()

作用相同, 但 putc()为宏定义, 非真正的函数调用.

返回值putc()会返回写入成功的字符, 即参数 c. 若返回 EOF 则代表写入失败.

范例参考 fputc().

7.fputc(将一指定字符写入文件流中):

头文件#include <stdio.h>

定义函数int fputc(int c, FILE * stream);

函数说明fputc 会将参数 c 转为 unsigned char 后写入参数 stream 指定的文件中.

返回值fputc()会返回写入成功的字符, 即参数 c. 若返回 EOF 则代表写入失败.

范例

#include <stdio.h> int main(void) {FILE * fp; char a[26] = "abcdefghijklmnopqrstuvwxyz"; int i; fp = fopen("noexist", "w"); for(i = 0; i < 26; i++) fputc(a[i], fp); fclose(fp);return 0; }

例如:noexist改成2.txt,会发现当前文件夹生成了一个2.txt文件,且文件内容为abcdefghijklmnopqrstuvwxyz

8.putchar(将指定的字符写到标准输出设备):

头文件#include <stdio.h>

定义函数int putchar (int c);

函数说明putchar()用来将参数 c 字符写到标准输出设备.

返回值putchar()会返回输出成功的字符, 即参数 c. 若返回 EOF 则代表输出失败.

附加说明putchar()非真正函数, 而是 putc(c, stdout)宏定义.

范例参考 getchar().

9.puts(用于讲字符串输出到缓冲区):

头文件#include <stdio.h>

定义函数int puts (char *string);

函数说明putchar()用来将参数 c 字符写到标准输出设备.

返回值若该函数将字符串输出到流中,返回非零值;否则,返回0.

附加说明putchar()非真正函数, 而是 putc(c, stdout)宏定义.

范例

#include <stdio.h> int main(void) {char string[]="This is a test\n";puts(string);return 0;}

运行程序结果为This is a test

10.fputs(将一指定的字符串写入文件内):

头文件#include <stdio.h>

定义函数int fputs(const char *s, FILE *stream);

函数说明fputs()用来将参数 s 所指的字符串写入到参数 stream 所指的文件内.

返回值若成功则返回写出的字符个数, 返回 EOF 则表示有错误发生.

范例请参考 fgets().

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。