区分一下printf,sprintf,fprintf

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wz947324/article/details/79961020

printf:

函数声明:int fprintf(FILE *stream, const char *format, ...)

说明:标准输出,是把格式字符串输出到标准输出(一般是屏幕,可以重定向)。

#include <stdio.h>
int main(void){
    int a=88,b=89;
    printf("%d %d\n",a,b);
    printf("%d,%d\n",a,b);
    printf("%c,%c\n",a,b);
    printf("a=%d,b=%d",a,b);
    return 0;
}

sprintf:

函数声明:int sprintf(char *str, const char *format, ...)

说明:是把格式字符串输出到指定字符串中,所以参数比printf多一个char*。那就是目标字符串地址。

#include<stdio.h>  
int main()  
{  
    char buffer[10];  
    char *a = "1234";  
    char *b = "5678";  
    sprintf(buffer, "%s%s", a, b);  
    printf("%s\n", buffer);  
    return 0;  
}  

fprintf:

函数声明:int fprintf(FILE *stream, const char *format, ...)

说明:是把格式字符串输出到指定文件设备中,所以参数笔printf多一个文件指针FILE*。

char name[20] = "lucy"; 
FILE *out;
out = fopen( "output.txt", "w" );
if( out != NULL )
fprintf( out, "Hello %s\n", name );
返回值:若成功则返回输出字符数,若输出出错则返回负值。
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页