目录

  • 一.vprintf 函数和 printf 函数声明简介

    • 1.printf 函数声明
    • 2.vprintf 函数声明
  • 二.vprintf 函数和 printf 函数使用
  • 三.猜你喜欢

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门

一.vprintf 函数和 printf 函数声明简介

1.printf 函数声明

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

2.vprintf 函数声明

/*
*描述:将可变参数列表的格式化数据打印到stdout
*参数:
*   format  包含格式字符串的C字符串,其格式字符串与printf中的格式相同。
*
*   arg  标识使用va_start初始化的变量参数列表的值。va_list是在<cstdarg>中定义的特殊类型。
*
*返回值:
*   成功后,返回写入的字符总数。
*   如果发生写入错误,则会设置错误指示符(ferror)并返回负数。
*   如果在编写宽字符时发生多字节字符编码错误,则将errno设置为EILSEQ,并返回负数;
*/
int vprintf ( const char * format, va_list arg );

注意:两者传参的区别,实际上 printf 底层就是调用 vprintf 函数来将内容输出到控制台的;

二.vprintf 函数和 printf 函数使用

1.vprintf 函数一般和 va_start / va_end 配套使用;

2.常规情况下,输出到控制台,多数情况下使用 printf 函数即可。当你需要自己写一个自定义 printf 函数时候才需要 vprintf 函数,例如:

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.co
//@File:C语言教程 - C语言 vprintf 函数和 printf 函数区别
//@Time:2021/07/16 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include "stdafx.h"
#include <stdio.h>
#include <stdarg.h>
void myPtintf(char *format, ...)
{va_list args;va_start(args, format);vprintf(format, args);va_end(args);
}
int main()
{myPtintf("自定义printf函数:hello world\n");myPtintf("自定义printf函数:%s %s\n", "hello world", "C语言教程-猿说编程");printf("系统printf函数:hello world\n");printf("系统printf函数:%s %s\n", "hello world", "C语言教程-猿说编程");return(0);
}/*
输出:
自定义printf函数:hello world
自定义printf函数:hello world C语言教程-猿说编程
系统printf函数:hello world
系统printf函数:hello world C语言教程-猿说编程
*/

实际上 printf 底层就是调用 vprintf 函数来将内容输出到控制台的;

三.猜你喜欢

  1. C 语言 数组下标越界和内存溢出区别
  2. C 语言 使用指针遍历数组
  3. C 语言 指针和数组区别
  4. C 语言 指针数组和数组指针区别
  5. C 语言 野指针
  6. C 语言 函数值传递和址传递
  7. C 语言 函数不定长参数
  8. C 语言 函数指针
  9. C 语言 指针函数
  10. C 语言 回调函数 callback
  11. C 语言 #pragma once
  12. C 语言 #include <> 与 #include “” 区别
  13. C 语言 const 修饰函数参数
  14. C 语言 const 和 define 区别
  15. C 语言 #运算符
  16. C 语言 ##运算符
  17. C 语言 __VA_ARGS__
  18. C 语言 ##__VA_ARGS__
  19. C 语言 函数不定长参数 ##__VA_ARGS__经典案例
  20. C 语言 va_start 宏
  21. C 语言 va_end 宏
  22. C 语言 va_arg 宏
  23. C 语言 vprintf 函数
  24. C 语言 vprintf 函数和 printf 函数区别

未经允许不得转载:猿说编程 » C 语言 vprintf 函数和 printf 函数区别

C语言 vprintf 函数 - C语言零基础入门教程相关推荐

  1. Python reduce / map / filter 函数区别 - Python零基础入门教程

    目录 一.map 函数 二.reduce 函数 三.filter 函数 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 Pyth ...

  2. Python type函数和isinstance函数区别 - Python零基础入门教程

    目录 一.Python type 函数简介 二.Python isinstance 函数简介 三.Python type 函数和 isinstance 函数区别 四.猜你喜欢 零基础 Python 学 ...

  3. Python 匿名函数 lambda - Python零基础入门教程

    目录 一.Python 匿名函数 lambda 语法 二.Python 匿名函数 lambda 调用 1.lambda 匿名函数常规使用 2. lambda 匿名函数使用不定长参数 3. lambda ...

  4. Python eval 与 exec 函数区别 - Python零基础入门教程

    目录 一.Python eval 与 exec 函数的区别 二.价值 10 个亿的智能机器人核心代码 三.猜你喜欢 基础 Python 学习路线推荐 : Python 学习目录 >> Py ...

  5. C语言 vprintf 函数和 printf 函数区别 - C语言零基础入门教程

    目录 一.vprintf 函数和 printf 函数声明简介 1.printf 函数声明 2.vprintf 函数声明 二.vprintf 函数和 printf 函数使用 三.猜你喜欢 零基础 C/C ...

  6. C语言 assert 函数 - C语言零基础入门教程

    目录 一.assert 函数简介 二.assert 函数使用 三.assert 函数用法总结与注意事项 四.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C ...

  7. C语言 abort 函数 - C语言零基础入门教程

    目录 一.abort 函数简介 二.abort 函数使用 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.abort 函数简介 C 语 ...

  8. C语言 main 函数参数 main(int argc, char *argv[]) - C语言零基础入门教程

    目录 一.main 函数写法 二.main 函数参数简介 三.使用 main 函数参数 1.打印 main 函数参数 a.直接运行 exe 文件 b.打开 cmd 命令行窗口执行 exe 文件 c.打 ...

  9. C语言 main 函数 - C语言零基础入门教程

    目录 一.main 函数简介 二.main 函数写法 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.main 函数简介 main 函 ...

最新文章

  1. [禅悟人生]每个人都可以获得自己的精彩
  2. 规格上下限和控制上下限计算_涡街流量计选型时对测量上下限的考虑
  3. 两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串
  4. 厉害了,淘宝千万并发,14 次架构演进…
  5. php基本功之_get(),_set()的用法
  6. 卡巴斯基授权许可文件_制片方未提供电视台授权证明,构成根本违约吗?
  7. 倒果汁c语言,水果榨汁补维生素C?这些补维生素的错误别再犯了
  8. 【Liunx】Linux 系统目录结构
  9. ubuntu 安装php redis,ubuntu上安装php redis
  10. 分布式架构的演进过程,docker面试题汇总
  11. Markdown转pdf分页
  12. 青岛大学的计算机专业考研分数线,青岛大学考研分数线
  13. 2021.05.09 美团测开笔试-弹吉他
  14. python对数正态分布函数_python中的对数正态分布
  15. 软件质量测试雨课堂习题
  16. 继承-super详解
  17. 关于java.util.concurrent.RejectedExecutionException: event executor terminated
  18. 为别人撑伞(深度好文)
  19. 免费录屏软件之OBS Studio
  20. 初学者学习编程大概需要多久精通

热门文章

  1. 打车业务下单高并发解决方案
  2. AI一体机高速自由流收费稽核解决方案
  3. 一针一线皆关“云” 报喜鸟以匠心融合科技
  4. Iceberg 在基于 Flink 的流式数据入库场景中的应用
  5. DLA实现跨地域、跨实例的多AnalyticDB读写访问 1
  6. Andrew Ng教你如何引领公司进入AI时代
  7. 530并行日:用超算更省心
  8. 国内厂商 Onyx 违反 GPL 协议,中国开源何去何从?
  9. Cloud一分钟 | 成本大增致谷歌财报蒙尘;Gartner发数据库魔力象限:阿里云成为黑马...
  10. react如何在父组件中调用子组件事件