模拟实现一个printf,函数可以实现my_printf("s ccc.","hello", 'n','i','h','a','o');//遇到s表示字符串
2016-11-09 16:07
615 查看
#include <stdio.h> #include <string.h> #include <stdarg.h> #include <assert.h> my_printf(const char* dest,...) { va_list arg; char *p=NULL; assert(dest); va_start(arg,dest); while(*dest) { if(*dest!='\0') { if (*dest=='s') { p=va_arg(arg, char*); printf("%s ",p); } else if(*dest=='c') { p=va_arg(arg, char*); printf("%c", p); } } dest++; } va_end(arg); } int main() { my_printf("s ccccc", "hello",'n','i','h','a','o'); return 0;
}
相关文章推荐
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配
- 模拟实现printf函数,可完成下面的功能 能完成下面函数的调用。 print("s ccc d.\n","hello",'b','i','t',100); 函数原型: print(char *
- 可变参数模拟printf()函数实现一个my_print()函数以及调用可变参数需注意的陷阱
- 实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。
- 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字
- 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.
- C语言:模拟实现字符串中查找一个字符串my_strstr()函数
- 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- <笔试><面试>编写一个排序函数,实现,既可以排序整形数组,又可以排序字符串。
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数
- c语言:模拟实现printf,要求功能:print(&quot;ccc\ts!&quot;,&#39;b&#39;,&#39;i&#39;,&#39;t&#39;,&quot;welcome to you&quot;);
- 实现一个函数,可以左旋字符串中的k个字符
- 实现一个函数,可以左旋字符串中K个字符
- 【c语言】 模拟实现printf,要求功能: my_printf("dc\ts\ndc\ndc\ts!", ...)
- 编写一个业务函数,实现字符串(前后各有三个空格,单词前后也均有空格) " i am student, you are teacher " , 各个单词首字符大写
- 【C语言】【笔试题】实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- // 写一个函数,实现将一个字符串中的'/t'替换成四个'*', '/t'个数不定。如char *p="ht/thdsf/t/ttt/tfds dfsw/t ew/t",替换后p="ht****hdsf********tt****fds dfsw****