C语言中printf,sprintf和fprintf的区别是什么

printf,sprintf和fprintf都是c语言的输出语句,都是把格式好的字符串输出。那么这三者有什么区别,下面本篇文章就来认识一下printf,sprintf和fprintf,介绍它们之间的区别,希望对大家有所帮助。

C语言中printf,sprintf和fprintf的区别是什么

printf

printf函数用于在标准输出设备(stdout控制台)上输出文本(字符串/字符流)或值。

基本语法

int printf(const char * format,...);

登录后复制

说明:

立即学习“C语言免费学习笔记(深入)”;

format提供了文本字符串的格式,该格式将在输出设备上使用%s,%d,%f等格式说明符进行输出。

…提供需要输出的参数列表。

返回类型int返回屏幕上输出的字符总数。

示例:

#include int main() {    printf("hello geeksquiz");     printf("");    int  a=2;   printf("%d",a);    return 0; }

登录后复制

输出:

2.jpg

sprintf

sprintf用于将格式化文本(字符串/字符流)发送(复制)到字符串缓冲区上。

基本语法

int sprintf(char * str,const char * format,...);

登录后复制

说明:

立即学习“C语言免费学习笔记(深入)”;

 ●  char * str : 将在其中发送(复制)格式化文本的字符数组。

 ●  format在格式说明符的帮助下提供格式化文本。

 ●  …提供需要输出的参数列表。

 ●  返回类型int将复制(发送)字符的总数返回到char * str中。

示例:

#include int main(){    char str[100];    int n;        n=sprintf((char*)str,"我的名字是%s, I am %d years old.","Mike",23);        printf("Text is: %s",str);    printf("Total number of copied characters are: %d",n);    return 0;}

登录后复制

说明:sprintf将字符串存储在指定的char缓冲区上,再通过printf在stdout控制台上输出。

输出:

3.jpg

fprintf

fprintf用于在文件中输出字符串内容,但不在stdout控制台上输出。

基本语法:

int fprintf(FILE * fptr,const char * str,...);

登录后复制

说明:

立即学习“C语言免费学习笔记(深入)”;

fptr :这是指向 FILE 对象的指针,该 FILE 对象标识了流。

str:这是 C 字符串,包含了要被写入到流 stream 中的文本。

示例:

#include int main() {     int i, n=2;     char str[50];       //open file sample.txt in write mode     FILE *fptr = fopen("sample.txt", "w");     if (fptr == NULL)     {         printf("无法打开文件");         return 0;     }       for (i=0; i

输出:

360截图20190125164812469.jpg

sample.txt中:

4.jpg

总结:

printf,sprintf和fprintf的区别是:它们的输出目标不一样。printf在stdout控制台上输出数据字符流;sprintf将数据字符流发送指定的char缓冲区上;fprintf用于在文件中输出字符串内容。

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注【创想鸟】相关教程栏目!!!

登录后复制

以上就是C语言中printf,sprintf和fprintf的区别是什么的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2437253.html

(0)
上一篇 2025年3月3日 10:58:15
下一篇 2025年3月3日 10:58:31

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 浅谈C#中的早期绑定和后期绑定

    当对象分配给对象变量时,编译器执行称为绑定的进程。c#执行两种不同类型的绑定:早期绑定和后期绑定。下面本篇文章就来带大家认识一下这两种绑定,希望对大家有所帮助。 早期绑定 早期绑定也称静态绑定,是指编译时绑定;早期绑定对象基本上是强类型对象…

    2025年3月3日
    200
  • C#中复制构造函数是什么

    通过从另一个对象复制变量或将一个对象的数据复制到另一个对象来创建对象的构造函数称为复制构造函数。下面我们来简单了解一下,希望对大家有所帮助。 复制构造函数是一个参数化构造函数,包含相同类类型的参数。它的主要用途是将新实例初始化为现有实例的值…

    2025年3月3日
    200
  • C ++中continue和break语句的简单比较

    “break”和“continue”都是“跳转”语句,专门用于改变程序的正常流程,它们可以将程序的控制权转移到程序的另一部分。那么它们之间有什么区别?下面本篇文章就带大家认识一下continue和break语句,介绍continue和bre…

    2025年3月3日 编程技术
    200
  • .net和c#有什么区别

    有的人可能会认为.net和c#之间没有太大的区别,但是实际上它们是两个并不相同,本篇文章我们就来给大家介绍一下关于.net和c#之间的区别。 什么是.net? .NET是微软公司下的一个开发平台,.NET核心就是.NET Framwork(…

    2025年3月3日
    200
  • C#与.net有什么关系

    .net与c#的关系有c#是一种针对与.net编写的编程语言,与c++的语法十分相似。而.net是一个开发框架,而且.net中存在的特性c#不一定存在。 经常会有人将.net与C#混淆,认为它们是一样的,其实他们还是有一定的区别的。.net…

    2025年3月3日
    200
  • C/C++函数如何返回多个值?(代码示例)

    有时我们需要从通过一个函数返回多个值,不幸的是c++/c ++不允许这样做;但我们可以通过一些巧妙的方法来达到这种效果。下面本篇文章就来给大家介绍c/c++从函数中返回多个值的方法,希望对大家有所帮助。【视频教程推荐:c语言教程、c++教程…

    2025年3月3日 编程技术
    200
  • C++中如何避免内存泄漏?

    内存泄漏会造成系统内存的浪费,严重会导致系统崩溃等后果。那么如何避免内存泄漏?下面本篇文章就来给大家介绍一些c++++中的内存泄漏,了解如何避免内存泄漏,希望对大家有所帮助。【视频教程推荐:c++教程】 内存泄漏 内存泄漏是指因为某些原因(…

    2025年3月3日
    200
  • 在C++中对象如何作为参数传递和返回?(代码示例)

    在c++++中,我们可以将类的对象作为参数传递,还可以像传递和返回其他变量一样从函数中返回它们;且不需要特殊的关键字或头文件。下面本篇文章就来带大家了解一下,希望对大家有所帮助。 1、将对象作为参数传递 要将对象作为参数传递,我们将对象名作…

    2025年3月3日
    200
  • Perl和C++的区别是什么?Perl和C++的简单比较

    perl和c++++都是一种通用编程语言,那么它们之间有什么区别?下面本篇文章就来带大家简单比较一下perl和c++,了解perl和c++之间的区别,希望对大家有所帮助。 什么是Perl? Perl是一种通用的高级解释和动态编程语言。Per…

    2025年3月3日
    200
  • C#是什么,能做些什么?

    C#是由C和C++衍生出来的一种安全的、稳定的、简单的、优雅的面向对象编程语言,它专为公共语言基础结构所设计,提供了大量的功能支持与接入使得功能开发更加简单,我们可以使用C#语言来开发软件或者是网站。 C#语言是由微软公司发布的一种面向对象…

    2025年3月3日
    200

发表回复

登录后才能评论