~~~
#include <stdio.h>
int fputc(int c, FILE *stream);
int fputs(const char *s, FILE *stream);
int putc(int c, FILE *stream);
int putchar(int c);
int puts(const char *s);
~~~
**fputc()寫一個字符c,強制轉換成一個unsigned char類型字符,到文件stream。**
**fputs()寫一個字符串到stream,省略字符串尾部的‘\0’。**
**putc()與fputc()相同,只是putc()是作為一個宏實現的。**
**putchar(c)等同于putc(c,stdout)。**
**puts()寫一個字符串到標準輸出stdout,并自動在字符串的尾部添加一個換行符"\n"。**
**返回值:fputc()、putc()和putchar()成功時返回要寫的字符,失敗返回EOF。**
**puts()和fputs()成功時返回一個非負數,失敗返回EOF。**
示例程序如下:
~~~
#include <stdio.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
int
main(int argc, char **argv)
{
int tmp;
char a = 'a';
char space = '\n';
char *str = "libing";
FILE *fp;
fp = fopen("/work/tmp/c/txt", "w+");/*打開文件txt,并將文件指針賦值給fp,fp用于下面各個函數的參數*/
if(fp == NULL){
printf("open txt fail\n");
return -1;
}
/*fputc function test*/
tmp = fputc(a, stdout);/*字符a輸出到標準輸出,并將返回值賦值給tmp*/
fputc(space, stdout);/*fputc的輸出只是輸出字符,并不在后面添加換行符,我們需要自己手工添加*/
fputc(a, fp);/*字符a輸出到文件指針fp指向的文件*/
fputc(space, fp);
fputc(a, fp);
fputc(space, fp);
printf("tmp = %d\n", tmp);/*輸出fputs函數的返回值,可以看出,它輸出的是字符a的ASCII碼*/
/*fputs function test*/
fputs(str, stdout);/*將str所指向的字符串輸出到標準輸出,注意,它不會在后面添加換行符*/
fputc(space, stdout);
tmp = fputs(str, fp);
fputc(space, fp);/*將str所指向的字符串輸出到文件指針fp所指向的文件*/
printf("tmp = %d\n", tmp);
/*putc function test*/
tmp = putc(a, stdout);/*<span style="font-size:18px;">putc()與fputc()相同</span>*/
putc(space, stdout);
putc(a, fp);
putc(space, fp);
putc(a, fp);
putc(space, fp);
printf("tmp = %d\n", tmp);
/*puchar function test*/
tmp = putchar(a);/*<span style="font-size:18px;">putchar(c)等同于putc(c,stdout)</span>*/
putchar(space);
printf("tmp = %d\n", tmp);
/*puts function test*/
puts(str);/*將str指針所指向的字符串輸出到標準輸出,并且會在字符串后自動添加換行符*/
return 0;
}
~~~
- 前言
- (四)回調函數
- (一)while(1)死循環與for(;;)死循環的區別
- (二)static關鍵字
- (三)函數
- (四)可變參數函數
- (五)setjmp和longjmp
- (六)指針
- (七)回調函數
- (八)字符串
- (九)動態內存分配
- (十)結構體
- (十一)深入理解指針
- (十二)命令行參數
- (十三)printf、fprintf、sprintf和snprintf函數
- (十四)const關鍵字詳解
- (十五)字符串輸入函數fgets、gets和scanf
- (十六)字符串輸出函數puts、fputs和printf
- (十七)字符/字符串輸出函數fputc、fputs、putc、putchar和puts
- (十八)字符/字符串輸入函數fgetc、fgets、getc、getchar和gets
- (十九)restrict關鍵詞
- (二十)scanf函數詳解
- (二一)內聯函數
- (二二)位操作
- (二三)errno變量
- (二四)內存分配