模拟实现printf

模拟实现printf。

代码如下:

#include<stdio.h>
#include<stdlib.h>
#include<stdarg.h>

void my_printf(const char*format,...)
{
	va_list arg;
	va_start(arg,format);
	while(*format)
	{
		switch(*format)
		{
			case ‘c‘:
			{
				char ch=va_arg(arg,char);
				putchar(ch);
				break;
			}
			case ‘s‘:
			{
				char *ch=va_arg(arg,char*);
				while(*format)
				{
					putchar(*ch);
					ch++;
				}
				break;
			}
			case ‘d‘:
			{
				int p=va_arg(arg,int);
				putchar(p+‘0‘);
				break;
			}
		}format++; 
	}va_end(arg);
}

int main()
{
	my_printf("dcc\ts\t!\n",1,‘w‘,‘e‘,‘welcome you come here‘);
	system("pause");
	return 0;
}
时间: 2024-12-23 21:04:58

模拟实现printf的相关文章

C语言:模拟实现printf,要求功能:print(&quot;ccc\ts!&quot;,&#39;b&#39;,&#39;i&#39;,&#39;t&#39;,&quot;welcome to you&quot;);

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <stdlib.h> #include <stdarg.h> int my_printf(const char *fmt, ...) { const char *s; char c; va_list ap;//参数列表 va_start(ap, fmt);//取的fmt指针给ap while (*fmt) { /*if (*fmt != 's' |

创建函数利用可变参数列表的形式模拟实现printf的功能

★创建函数利用可变参数列表的形式模拟实现printf的功能. 模拟简单的输入单个字符和字符串时的输出形式 如:输入:%c %c %c %c %c\t%s,'h','e','l','l','o',"welcome to here!" 输出:h e l l o   welcome to here! #include<stdio.h> #include<stdlib.h> #include<stdarg.h>    //需引入stdarg的头文件以便建立可

【c语言】 &nbsp; 模拟实现printf,要求功能: my_printf(&quot;dc\ts\ndc\ndc\ts!&quot;, ...)

模拟实现printf功能输出如下形式,'d'输出整形,'c'输出字符型,'s'输出字符串,其他输出自身形式 my_printf("dc\ts\ndc\ndc\ts!",1, 'b',"zhangweina",2, 'i', 3,'t', "welcome to you"); 可变参数列表的一些小知识: //宏 stdard.h //va_list  声明一个类型 //va_start 第一个参数为va_list变量的名字,第二个参数为省略号前最后

【C语言】模拟实现printf函数(可变参数)

一.printf函数介绍 printf功能 printf函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息. printf原型 int printf( const char* format , [argument] ... ); //定义在stdio.h中 以上部分来自于高小调博客(一个UI非常好,没有广告,纯绿色的博客,建议大家收藏) 二.利用可变参数列表模拟实现printf 1.分析printf函数 printf("Hello haohaosong!\n"); prin

模拟实现printf,可以实现输出print(“sccc!\n”,”hello”,’b’,’i’,’t’);

#include<stdio.h> #include<stdarg.h> #include<stdlib.h> void print(const char *format, ...) { va_list arg; char *para = NULL; va_start(arg, format); while (*format) { switch (*format) { case's': para = va_arg(arg, char*); while (*para) {

【C语言】浅谈可变参数与printf函数

一.何谓可变参数 int printf( const char* format, ...); 这是使用过C语言的人所再熟悉不过的printf函数原型,它的参数中就有固定参数format和可变参数(用"-"表示). 而我们又可以用各种方式来调用printf,如: printf( "%d ",value); printf( "%s ",str); printf( "the number is %d ,string is:%s ",

可变参数列表实现printf函数

模拟实现printf函数,可以在屏幕上输出my_printf("sccccc\n","hello",'w','o','r','l','d'); #include<stdio.h> #include<stdlib.h> #include<stdarg.h> int my_printf(char *word, ...) { va_list arg; va_start(arg, word); while (*word) { switch

操作系统实验二(调度算法模拟-先进先出-时间片轮转法-优先服务调度算法)

实验二 进程调度 一.     实验目的 1.       理解进程运行的并发性. 2.       理解处理器的三级调度. 3.       掌握先来先服务的进程调度算法. 4.       掌握短进程优先的进程调度算法. 5.       掌握时间片轮转的进程调度算法. 二.     实验设备 1.     安装windows或者linux操作系统的PC机 2.     C程序编译环境 三.     实验内容 用c语言编程模拟实现至少一个操作系统的常见进程调度算法.常见的进程调度算法有先来先

my_printf()部分功能实现

问题描述:1.模拟实现printf函数,可以在屏幕上输出my_printf("scccc\n","change",'w','o','r','l','d','!'); 代码实现: #include <stdio.h> #include <stdarg.h> void my_printf(char *format,...) {  va_list va_arg;  /*  **准备访问可变参数  */  va_start(va_arg,format