Ian*_*aum 15 c variables function parameter-passing
所以,这是我现在面临的一个小问题 - >我正在尝试编写一个接受char*消息和可变数量参数的函数.我的函数会稍微修改一下这个消息,然后它会用消息和给定的参数调用printf.实际上,我正在尝试写这样的东西:
void modifyAndPrintMessage(char* message,...){
char* newMessage; //copy message.
//Here I'm modifying the newMessage to be printed,and then I'd like to print it.
//passed args won't be changed in any way.
printf(newMessage,...); //Of course, this won't work. Any ideas?
fflush(stdout);
}
Run Code Online (Sandbox Code Playgroud)
所以,任何人都知道我该怎么做才能实现它?我非常感谢任何帮助:)
K S*_*iel 17
你想使用varargs ......
void modifyAndPrintMessage( char* message, ... )
{
// do somehthing custom
va_list args;
va_start( args, message );
vprintf( newMessage, args );
va_end( args );
}
Run Code Online (Sandbox Code Playgroud)