Ejemplo n.º 1
0
void lltoa(int64_t value, char *buffer) {

	// Convert value to string
	if(value < 0) {
		buffer[0] = '-';
		ulltoa(value * -1, buffer + sizeof('-'));
	}
	else
		ulltoa(value, buffer);
}
static int add_cmdline_param(char *cmdline, unsigned long long addr,
				char *cmdstr, char *byte)
{
	int cmdlen, len, align = 1024;
	char str[COMMAND_LINE_SIZE], *ptr;

	/* Passing in =xxxK / =xxxM format. Saves space required in cmdline.*/
	switch (byte[0]) {
	case 'K':
		if (addr%align)
			return -1;
		addr = addr/align;
		break;
	case 'M':
		addr = addr/(align *align);
		break;
	}
	ptr = str;
	strcpy(str, cmdstr);
	ptr += strlen(str);
	ulltoa(addr, ptr);
	strcat(str, byte);
	len = strlen(str);
	cmdlen = strlen(cmdline) + len;
	if (cmdlen > (COMMAND_LINE_SIZE - 1))
		die("Command line overflow\n");
	strcat(cmdline, str);
#if DEBUG
	fprintf(stderr, "Command line after adding elfcorehdr: %s\n", cmdline);
#endif
	return 0;
}
Ejemplo n.º 3
0
char *lltoa(_int64 value, char *buf, int radix) {
	char				*save = buf;

	if(radix == 10 && value < 0) {
		*buf++ = '-';
		value = -value;
	}
	return ulltoa(value, buf, radix) ? save : 0;
}
Ejemplo n.º 4
0
/* Create a new sds starting from a unsigned long long num. */
sds sds_new_ull(uint64_t num)
{
	sds s;

	s = sds_new_len(NULL, 22);
	ulltoa(num, s);
	sds_update_len(s);
	return s;
}
Ejemplo n.º 5
0
void print_time(const char* s, uint64_t t){
	char sv[22];
	uint8_t c;
	cli_putstr("\r\n");
	cli_putstr(s);
	ulltoa(t, sv, 10);
	for(c=strlen(sv); c<11; ++c){
		cli_putc(' ');
	}
	cli_putstr(sv);
}
Ejemplo n.º 6
0
ostream &ostream::operator << ( unsigned __int64 i ) {
    /****************************************************/
// Write an unsigned 64bit integer to the stream.
// A signed 64bit integer displayed in base 8 or base 16 also uses
// this routine.

    int         base;
    char        buffer[LONGEST_INT64 + 1];
    int         size;
    int         digit_offset;

    __lock_it( __i_lock );
    base = __FlagsToBase( flags() );

    // Sign:
    if( i > 0  &&  (flags() & ios::showpos)  &&  base == 10 ) {
        buffer[0] = '+';
        size      = 1;
    } else {
        size      = 0;
    }

    // Prefix:
    __AddPrefix( i == 0, buffer, size, base, flags() );

    // Digits:
    digit_offset = size;
    ulltoa( i, buffer + digit_offset, base );
    if( flags() & ios::uppercase ) {
        strupr( buffer );
    }
    size = ::strlen( buffer );

    // Write the number:
    if( opfx() ) {
        setstate( __WATCOM_ios::writeitem( *this, buffer, size, digit_offset ) );
        osfx();
    }
    return( *this );
}
Ejemplo n.º 7
0
static std::string lltoa(long long int l)
{
    return ulltoa(l > 0 ? l : -l);
}