#include <unistd.h>
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
static int write_stdout(const char *token, int length)
{
int rc;
int bytes_written = 0;
do {
rc = write(1, token + bytes_written, length - bytes_written);
if (rc < 0)
return rc;
bytes_written += rc;
} while (bytes_written < length);
return bytes_written;
}
char* convert(unsigned int num, int base)
{
static char Representation[] = "0123456789ABCDEF";
static char buffer[50];
char *ptr;
ptr = &buffer[49];
*ptr = '\0';
do
{
*--ptr = Representation[num % base];
num/=base;
} while (num != 0);
return ptr;
}
void iocla_printf(const char *format, ...)
{
va_list args;
va_start(args, format);
unsigned int i;
char* specificator;
char* s;
for (specificator = format; *specificator != '\0'; specificator++)
{
while (*specificator != '%')
{
putchar(*specificator);
}
specificator++;
switch (*specificator)
{
case 'd':
i = va_arg(args,int);
if (i<0)
{
i = -i;
putchar('-');
}
puts(convert(i,10));
break;
break;
case 'u':
i = va_arg(args,int);
puts(convert(i,10));
break;
break;
case 'x':
i = va_arg(args, unsigned int);
puts(convert(i,16));
break;
break;
case 'c':
i = va_arg(args, int);
putchar(i);
break;
break;
case 's':
s = va_arg(args, char *);
puts(s);
break;
break;
default:
break;
}
}
//return 0;
}
int main()
{
//printf("%d\n", iocla_printf("Test blaa balaba %d", 5, 7 ,8));
iocla_printf("test, nr int: %d, unsigned: %u, hexa: %x, char: %c, string: %s", 15, 2, 4, 'b', "mancare");
printf("\n");
return 0;
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}