用C++实现类似printf的功能
题目要求如下,求助{:10_266:}#include <iostream>
using namespace std;
void my_printf(char* format,int a,char c,char* d)
{
while(*format)
{
char temp= *format;//取出格式用来解析
if (temp=='%')//如果是%就看他下一个字符
{
switch(*++format)
{
case 'd'://如果整数转换成字符串循环打印
{
char *aa=(char *)malloc(20);
itoa(a,aa,10);
while(*aa)
{
putchar(*aa);
aa++;
}
break;
}
case 'c'://直接打印
{
putchar(c);
break;
}
case 's'://循环打印
{
while(*d)
{
putchar(*d);
d++;
}
break;
}
default:break;
}
}
else//如果不是%就直接打印出来,比如逗号分隔符
{
putchar(*format);
}
format ++;//格式字符串指针推进
}
}
int main(void)
{
int a=3600;
char c='x';
char d[]="I love FishC!";
my_printf("%d,%c,%s",a,c,d);
system("pause");
return 0;
}
页:
[1]