rendered paste body#include <string.h>
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
char *InnerAdd(const char *message, va_list params)
{
char mask[] = "%s\r\n";
size_t length = vsnprintf(NULL, 0, mask, params);
//char *final = (char *) malloc((length + 1) * sizeof(char));
char *final = (char *) malloc(1024);
int result = vsnprintf(final, length + 1, mask, params);
printf("vsnprintf result: %d\r\n", result);
printf("%s", final);
return final;
}
char *AddLine(const char *message, ...)
{
va_list va_args;
va_start(va_args, message);
InnerAdd(message, va_args);
va_end(va_args);
}
int main(int argc, char **argv)
{
char message[] = "This is a test.";
if (strcmp(AddLine(message), "This is a test.\r\n") != 0)
{
printf("Test failure!\r\n");
}
else
{
printf("Test succeeded.\r\n");
}
return 0;
}