当前位置: C语言 -- 标准库 -- <stdio.h> -- putc

putc函数


概要:
#include <stdio.h>
int putc(int c, FILE *stream);

描述:

该函数将字符写入输出流,具体步骤:将参数c指定的字符转换为unsigned char类型,写入参数stream指向的输出流;如果与流相关联的文件定义了文件位置指示符,字符将写入到文件位置指示符指定的位置,并且将文件位置指示符适当地前进。如果文件不支持位置请求或者流以a模式打开,字符将添加到输出流。

该函数等价于fputc函数,唯一的区别在于:如果实现将putc定义为函数式宏,可能会对参数stream多次评估,因此参数stream应为不带副作用的表达式。


参数:
int c

int类型整数,写入流时会转换为unsigned char类型。

FILE *stream

指向写入字符的输出流的指针。


返回值:

如果调用成功,函数返回写入的字符;如果发生写入错误,函数返回EOF,并为流设置错误指示符(error indicator)。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
/*函数putc范例*/

#include <stdio.h>

int main(void)
{
    FILE *pFile;
    const char str[] = "The longest day has an end.";

    if(pFile=fopen("gch.txt", "w"))
    {
        for(size_t i=0; i<sizeof(str)/sizeof(str[0]); ++i)
            putc(str[i], pFile);
    }
    
    fclose(pFile);

    return 0;
}


结果:

创建一个名为gch.txt的文件,并向其写入:

The longest day has an end.


相关内容:
fputs 将字符串写入输出流的函数。
fputc 将字符写入输出流的函数。
putchar 将字符写入标准输出流的函数。
puts 将字符串写入标准输出流的函数。