C 语言 putc()

putc() 函数在 stdio.h 头文件中定义。它用于将指定字符写入给定流,并推进流的位置指示器。


int putc(int char, FILE *stream); #where stream should be a file pointer


putc() 参数: 

putc() 函数接受两个参数,即执行写入操作的流和要写入的字符。   

参数 描述 必需/可选
char  这是要写入的字符 必需
stream 指向 FILE 对象的指针,该对象标识要写入字符的流 必需

putc() 返回值

在 putc() 函数中,字符值以无符号字符类型返回,并强制转换为 int 类型,或者在文件末尾或出错时返回 EOF。

输入 返回值
成功时  写入的字符
出错时 设置流的错误指示器并返回 EOF

putc() 示例 

示例 1:C 语言中 putc() 函数的工作原理?


#include <stdio.h>

int main()
{
   FILE *pnt;
   int chr;

   pnt = fopen("myfile.txt", "w");
   for( chr = 33 ; chr <= 100; chr++ ) 
   {
      putc(chr, pnt);
   }
   fclose(pnt);
   
   return(0);
}

输出


/* myfile.txt content */
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd

示例 2:C 语言中 putc() 如何工作?


#include <stdio.h>

int main (){
   char chr;
   FILE *pnt;
   if (pnt = fopen("mytest.c", "r"))
   {
     chr = getc(pnt);
     while (chr != EOF)
     {
        putc(chr, stdout);
        chr = getc(pnt);
     }
     fclose(pnt);
     return 0;
   }
   return 1;
}

输出


/* mytest.c file content */
Hi, How are you?