c语言ungetc参数,C 库函数 - ungetc()

描述

C 库函数 int ungetc(int char, FILE *stream) 把字符 char(一个无符号字符)推入到指定的流 stream 中,以便它是下一个被读取到的字符。

声明

下面是 ungetc() 函数的声明。

int ungetc(int char, FILE *stream)

参数

char -- 这是要被推入的字符。该字符以其对应的 int 值进行传递。

stream -- 这是指向 FILE 对象的指针,该 FILE 对象标识了输入流。

返回值

如果成功,则返回被推入的字符,否则返回 EOF,且流 stream 保持不变。

实例

下面的实例演示了 ungetc() 函数的用法。

#include

int main ()

{

FILE *fp;

int c;

char buffer [256];

fp = fopen("file.txt", "r");

if( fp == NULL )

{

perror("打开文件时发生错误");

return(-1);

}

while(!feof(fp))

{

c = getc (fp);

/* 把 ! 替换为 + */

if( c == '!' )

{

ungetc ('+', fp);

}

else

{

ungetc(c, fp);

}

fgets(buffer, 255, fp);

fputs(buffer, stdout);

}

return(0);

}

假设我们有一个文本文件 file.txt,它的内容如下。文件将作为实例中的输入:

this is zyiz

!c standard library

!library functions and macros

让我们编译并运行上面的程序,这将产生以下结果:

this is zyiz

+c standard library

+library functions and macros

+library functions and macros

b739ec46bb5c46d9c0aa4ce35ba1ea56.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值