|
@@ -1,19 +1,23 @@
|
|
|
|
|
|
|
|
|
+#include <stdio.h>
|
|
|
+#include <stdlib.h>
|
|
|
+#include <string.h>
|
|
|
#include <sys/types.h>
|
|
|
#include <stdarg.h>
|
|
|
-void foo(const char *format, ...) {
|
|
|
+int foo(const char *format, ...)
|
|
|
+{
|
|
|
va_list ap;
|
|
|
- int len;
|
|
|
+ size_t len;
|
|
|
char buf[5];
|
|
|
|
|
|
va_start(ap, format);
|
|
|
len = vsnprintf(0, 0, format, ap);
|
|
|
va_end(ap);
|
|
|
- if (len != 5) exit(1);
|
|
|
+ if (len != 5) return(1);
|
|
|
|
|
|
- if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1);
|
|
|
+ if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) return(1);
|
|
|
|
|
|
- exit(0);
|
|
|
+ return(0);
|
|
|
}
|
|
|
-int main() { foo("hello"); }
|
|
|
+int main(void) { return foo("hello"); }
|