how to represent binary code , hex code in c++ and display them on screen using prinf statement

Discussion in 'C++' started by arvind, Oct 4, 2003.

  1. arvind

    arvind Guest

    hi,
    How do I display a number in binary or octagonal ?

    eg.
    int a= 195; //1100 0011
    int b = 87; //0101 0111
    int c = a&b;//0100 0011 => bitwise and

    printf("%0x", c); // Here I get the hexagonal output
    //I want to get the binary output of char c
    // I also want the Octagonal Outpur of char c

    Please let me how to the output in the binary and octagonal form.

    Thanks in advance,
    -arvind
     
    arvind, Oct 4, 2003
    #1
    1. Advertising

  2. arvind

    WW Guest

    arvind wrote:
    > hi,
    > How do I display a number in binary or octagonal ?
    >
    > eg.
    > int a= 195; //1100 0011
    > int b = 87; //0101 0111
    > int c = a&b;//0100 0011 => bitwise and
    >
    > printf("%0x", c); // Here I get the hexagonal output
    > //I want to get the binary output of char c
    > // I also want the Octagonal Outpur of char c
    >
    > Please let me how to the output in the binary and octagonal form.


    For binaryu you need to write your own functions to convert numbers into a
    sequence of 1 and 0 characters. If you want something octagonal, you will
    need graphics:

    http://www.fastgeometry.com/images/octagon.gif
    http://www.fastgeometry.com/Encyclopedia/Polygons.htm

    However if you want *octal*, you will need to use o instead of the x.

    --
    WW aka Attila
     
    WW, Oct 4, 2003
    #2
    1. Advertising

  3. Re: how to represent binary code , hex code in c++ and display themon screen using prinf statement

    arvind wrote:

    > hi,
    > How do I display a number in binary or octagonal ?


    It's called "octal". "Octagon" is a geometric figure with 8 sides of
    equal length.

    >
    > eg.
    > int a= 195; //1100 0011
    > int b = 87; //0101 0111
    > int c = a&b;//0100 0011 => bitwise and
    >
    > printf("%0x", c); // Here I get the hexagonal output
    > //I want to get the binary output of char c
    > // I also want the Octagonal Outpur of char c


    No, here you get undefined behavior. The "%x" format specifier expects
    an unsigned int. If you pass it the wrong type (as you have here), the
    behavior is undefined. This is one reason to never use printf or any
    other function or language feature which defeats type-checking if you
    can possibly avoid it.

    And it's called "Hexadecimal". "Hexagon" is a geometric figure with 6
    sides of equal length.

    >
    > Please let me how to the output in the binary and octagonal form.


    There is no standard way to output binary, you have to work it out for
    yourself.

    Octal can be done using the "%o" printf format specifier (which also
    expects an unsigned int, so you'll need to convert or use the right type
    to start with if you want to use it). Better yet, look up the 'oct'
    stream modifier:

    std::cout << std::eek:ct << c << std::endl;

    -Kevin
    --
    My email address is valid, but changes periodically.
    To contact me please use the address from a recent posting.
     
    Kevin Goodsell, Oct 4, 2003
    #3
  4. Borland C/C++ has in its library a function called itoa. I don't remember
    the exact signature of the function.
    But one of the parameter had the parameter called __base__. With this a
    conversion from decimal to any
    base was possible.

    -Ghouse

    One of the params was to the base of a number. But there is no such standard
    function defined.

    "Kevin Goodsell" <> wrote in message
    news:DCEfb.1549$...
    > arvind wrote:
    >
    > > hi,
    > > How do I display a number in binary or octagonal ?

    >
    > It's called "octal". "Octagon" is a geometric figure with 8 sides of
    > equal length.
    >
    > >
    > > eg.
    > > int a= 195; //1100 0011
    > > int b = 87; //0101 0111
    > > int c = a&b;//0100 0011 => bitwise and
    > >
    > > printf("%0x", c); // Here I get the hexagonal output
    > > //I want to get the binary output of char c
    > > // I also want the Octagonal Outpur of char c

    >
    > No, here you get undefined behavior. The "%x" format specifier expects
    > an unsigned int. If you pass it the wrong type (as you have here), the
    > behavior is undefined. This is one reason to never use printf or any
    > other function or language feature which defeats type-checking if you
    > can possibly avoid it.
    >
    > And it's called "Hexadecimal". "Hexagon" is a geometric figure with 6
    > sides of equal length.
    >
    > >
    > > Please let me how to the output in the binary and octagonal form.

    >
    > There is no standard way to output binary, you have to work it out for
    > yourself.
    >
    > Octal can be done using the "%o" printf format specifier (which also
    > expects an unsigned int, so you'll need to convert or use the right type
    > to start with if you want to use it). Better yet, look up the 'oct'
    > stream modifier:
    >
    > std::cout << std::eek:ct << c << std::endl;
    >
    > -Kevin
    > --
    > My email address is valid, but changes periodically.
    > To contact me please use the address from a recent posting.
    >
     
    Mohamed Ghouse, Oct 4, 2003
    #4
  5. Re: how to represent binary code , hex code in c++ and display themon screen using prinf statement

    Mohamed Ghouse wrote:

    Please don't top-post.

    http://www.parashift.com/c -faq-lite/how-to-post.html#faq-5.4

    > Borland C/C++ has in its library a function called itoa.


    This group is for discussion of Standard C++, not Borland C++.

    http://www.slack.net/~shiva/welcome.txt
    http://www.slack.net/~shiva/offtopic.txt

    -Kevin
    --
    My email address is valid, but changes periodically.
    To contact me please use the address from a recent posting.
     
    Kevin Goodsell, Oct 4, 2003
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    10
    Views:
    6,229
    Neredbojias
    Aug 19, 2005
  2. Bengt Richter
    Replies:
    6
    Views:
    474
    Juha Autero
    Aug 19, 2003
  3. Replies:
    6
    Views:
    338
    Je-Givara
    Dec 1, 2006
  4. venkateshwar D
    Replies:
    11
    Views:
    249
  5. Replies:
    6
    Views:
    203
    Jorgen Grahn
    Dec 8, 2013
Loading...

Share This Page