我基本上是在写一个printf
. 我想要它,以便您可以在字符串中传递许多字符串,例如:
kprintf("Hello %s", "Goodbye %s", "Farewell\n");
不要问为什么,这很可能是疯了。无论如何,它会在查找它传递的字符串中有多少个 % 字符后递归调用自己;因此,如果其中超过 1%,它应该传递许多参数。但是,我无法以任何优雅的方式实现这一目标,请参见以下内容:
case 1:
kprintf(str, argus[0]);
break;
case 2:
kprintf(str, argus[0], argus[1]);
break;
case 3:
kprintf(str, argus[0], argus[1], argus[2]);
break;
case 4:
kprintf(str, argus[0], argus[1], argus[2], argus[3]);
break;
case 5:
kprintf(str, argus[0], argus[1], argus[2], argus[3], argus[4]);
break;
作为argus
指针数组。这行得通,但我讨厌它。有没有办法将变量参数传递给函数?