FILE * hexadecimal = fopen( "scanf_testdata_hexadecimal", "wb+" );
TESTCASE( hexadecimal != NULL );
FILE * hexadecimal = fopen( "scanf_testdata_hexadecimal", "wb+" );
TESTCASE( hexadecimal != NULL );
- TESTCASE( fwrite( "-0x0 -0x000 -0x7f 0x80 0xff -0x7fff 0x8000\n"
- "0xffff -0x7fffffff 0x80000000 0xffffffff\n"
- "-0x7fffffffffffffff 0x8000000000000000\n"
- "0xffffffffffffffff\n", 1, 142, hexadecimal ) == 142 );
+ TESTCASE( fwrite( "-0x0 -0x000 -0x7f -0x80 0xff -0x7fff -0x8000\n"
+ "0xffff -0x7fffffff -0x80000000 0xffffffff\n"
+ "-0x7fffffffffffffff -0x8000000000000000\n"
+ "0xffffffffffffffff\n", 1, 146, hexadecimal ) == 146 );
rewind( hexadecimal );
FILE * octal = fopen( "scanf_testdata_octal", "wb+" );
rewind( hexadecimal );
FILE * octal = fopen( "scanf_testdata_octal", "wb+" );
CHECK_FEQUAL( i, -127, unsigned char, "%hhu" );
}
{
CHECK_FEQUAL( i, -127, unsigned char, "%hhu" );
}
{
- TESTSCAN( 1, 4, hexadecimal, 18, SCANPARMS( "%hhi", &i ) );
+ TESTSCAN( 1, 5, hexadecimal, 18, SCANPARMS( "%hhi", &i ) );
CHECK_FEQUAL( i, -128, signed char, "%hhd" );
}
{
// reading ff, x
unsigned char i = -1;
CHECK_FEQUAL( i, -128, signed char, "%hhd" );
}
{
// reading ff, x
unsigned char i = -1;
- TESTSCAN( 1, 2, hexadecimal, 25, SCANPARMS( "%hhx", &i ) );
+ TESTSCAN( 1, 2, hexadecimal, 26, SCANPARMS( "%hhx", &i ) );
CHECK_EQUAL( i, 0xff );
}
{
// reading 0xff, x
unsigned char i = -1;
CHECK_EQUAL( i, 0xff );
}
{
// reading 0xff, x
unsigned char i = -1;
- TESTSCAN( 1, 4, hexadecimal, 23, SCANPARMS( "%hhx", &i ) );
+ TESTSCAN( 1, 4, hexadecimal, 24, SCANPARMS( "%hhx", &i ) );
CHECK_EQUAL( i, 255 );
}
{
// reading 0xff, i
signed char i = 0;
CHECK_EQUAL( i, 255 );
}
{
// reading 0xff, i
signed char i = 0;
- TESTSCAN( 1, 4, hexadecimal, 23, SCANPARMS( "%hhi", &i ) );
+ TESTSCAN( 1, 4, hexadecimal, 24, SCANPARMS( "%hhi", &i ) );
CHECK_EQUAL( i, -1 );
}
{
CHECK_EQUAL( i, -1 );
}
{
{
// reading 7fff, x
unsigned short i = -1;
{
// reading 7fff, x
unsigned short i = -1;
- TESTSCAN( 1, 4, hexadecimal, 31, SCANPARMS( "%hx", &i ) );
+ TESTSCAN( 1, 4, hexadecimal, 32, SCANPARMS( "%hx", &i ) );
CHECK_EQUAL( i, 32767 );
}
{
// reading -0x7fff, x
unsigned short i = -1;
CHECK_EQUAL( i, 32767 );
}
{
// reading -0x7fff, x
unsigned short i = -1;
- TESTSCAN( 1, 7, hexadecimal, 28, SCANPARMS( "%hx", &i ) );
+ TESTSCAN( 1, 7, hexadecimal, 29, SCANPARMS( "%hx", &i ) );
CHECK_FEQUAL( i, -32767, unsigned short, "%hu" );
}
{
CHECK_FEQUAL( i, -32767, unsigned short, "%hu" );
}
{
- TESTSCAN( 1, 6, hexadecimal, 36, SCANPARMS( "%hi", &i ) );
+ TESTSCAN( 1, 7, hexadecimal, 37, SCANPARMS( "%hi", &i ) );
CHECK_FEQUAL( i, -32768, signed short, "%hd" );
}
{
// reading ffff, x
unsigned short i = -1;
CHECK_FEQUAL( i, -32768, signed short, "%hd" );
}
{
// reading ffff, x
unsigned short i = -1;
- TESTSCAN( 1, 4, hexadecimal, 45, SCANPARMS( "%hx", &i ) );
+ TESTSCAN( 1, 4, hexadecimal, 47, SCANPARMS( "%hx", &i ) );
CHECK_EQUAL( i, 65535 );
}
{
// reading 0xffff, x
unsigned short i = -1;
CHECK_EQUAL( i, 65535 );
}
{
// reading 0xffff, x
unsigned short i = -1;
- TESTSCAN( 1, 6, hexadecimal, 43, SCANPARMS( "%hx", &i ) );
+ TESTSCAN( 1, 6, hexadecimal, 45, SCANPARMS( "%hx", &i ) );
CHECK_EQUAL( i, 65535 );
}
{
// reading 0xffff, i
signed short i = 0;
CHECK_EQUAL( i, 65535 );
}
{
// reading 0xffff, i
signed short i = 0;
- TESTSCAN( 1, 6, hexadecimal, 43, SCANPARMS( "%hi", &i ) );
+ TESTSCAN( 1, 6, hexadecimal, 45, SCANPARMS( "%hi", &i ) );
CHECK_FEQUAL( i, -1, signed short, "%hd" );
}
{
CHECK_FEQUAL( i, -1, signed short, "%hd" );
}
{
{
// reading 7fffffff, x
unsigned int i = -1;
{
// reading 7fffffff, x
unsigned int i = -1;
- TESTSCAN( 1, 8, hexadecimal, 53, SCANPARMS( "%x", &i ) );
+ TESTSCAN( 1, 8, hexadecimal, 55, SCANPARMS( "%x", &i ) );
CHECK_EQUAL( i, 2147483647 );
}
{
// reading -0x7fffffff, x
unsigned int i = -1;
CHECK_EQUAL( i, 2147483647 );
}
{
// reading -0x7fffffff, x
unsigned int i = -1;
- TESTSCAN( 1, 11, hexadecimal, 50, SCANPARMS( "%x", &i ) );
+ TESTSCAN( 1, 11, hexadecimal, 52, SCANPARMS( "%x", &i ) );
CHECK_FEQUAL( i, -2147483647, unsigned int, "%u" );
}
{
CHECK_FEQUAL( i, -2147483647, unsigned int, "%u" );
}
{
- // reading 0x80000000, i
+ // reading -0x80000000, i
- TESTSCAN( 1, 10, hexadecimal, 62, SCANPARMS( "%i", &i ) );
+ TESTSCAN( 1, 11, hexadecimal, 64, SCANPARMS( "%i", &i ) );
CHECK_FEQUAL( i, -2147483648, signed int, "%d" ); /* FIXME */
}
{
// reading ffffffff, x
unsigned int i = -1;
CHECK_FEQUAL( i, -2147483648, signed int, "%d" ); /* FIXME */
}
{
// reading ffffffff, x
unsigned int i = -1;
- TESTSCAN( 1, 8, hexadecimal, 75, SCANPARMS( "%x", &i ) );
+ TESTSCAN( 1, 8, hexadecimal, 78, SCANPARMS( "%x", &i ) );
CHECK_FEQUAL( i, 4294967295, unsigned int, "%d" );
}
{
// reading 0xffffffff, x
unsigned int i = -1;
CHECK_FEQUAL( i, 4294967295, unsigned int, "%d" );
}
{
// reading 0xffffffff, x
unsigned int i = -1;
- TESTSCAN( 1, 10, hexadecimal, 73, SCANPARMS( "%x", &i ) );
+ TESTSCAN( 1, 10, hexadecimal, 76, SCANPARMS( "%x", &i ) );
CHECK_FEQUAL( i, 4294967295, unsigned int, "%d" );
}
CHECK_FEQUAL( i, 4294967295, unsigned int, "%d" );
}
"-2147483648 +2147483647 +4294967295\n"
"-9223372036854775808 +9223372036854775807\n"
"+18446744073709551615\n";
"-2147483648 +2147483647 +4294967295\n"
"-9223372036854775808 +9223372036854775807\n"
"+18446744073709551615\n";
- char const * hexadecimal = "-0x0 -0x000 -0x7f 0x80 0xff -0x7fff 0x8000\n"
- "0xffff -0x7fffffff 0x80000000 0xffffffff\n"
- "-0x7fffffffffffffff 0x8000000000000000\n"
+ char const * hexadecimal = "-0x0 -0x000 -0x7f -0x80 0xff -0x7fff -0x8000\n"
+ "0xffff -0x7fffffff -0x80000000 0xffffffff\n"
+ "-0x7fffffffffffffff -0x8000000000000000\n"
"0xffffffffffffffff\n";
char const * octal = "+0000 -0000 +0177 +0377 -0377 +077777 +0177777\n"
"-0177777 +017777777777 +037777777777\n"
"0xffffffffffffffff\n";
char const * octal = "+0000 -0000 +0177 +0377 -0377 +077777 +0177777\n"
"-0177777 +017777777777 +037777777777\n"