C Programming - Floating Point Issues - Discussion

Discussion Forum : Floating Point Issues - General Questions (Q.No. 3)
3.
If the binary eauivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000 0000 0000 0000, what will be the output of the program (on intel machine)?
#include<stdio.h>
#include<math.h>
int main()
{
    float a=5.375;
    char *p;
    int i;
    p = (char*)&a;
    for(i=0; i<=3; i++)
        printf("%02x\n", (unsigned char)p[i]);
    return 0;
}
40 AC 00 00
04 CA 00 00
00 00 AC 40
00 00 CA 04
Answer: Option
Explanation:
No answer description is available. Let's discuss.
Discussion:
117 comments Page 3 of 12.

Sathish said:   1 decade ago
Hi, i have a doubt
in the statement

p=(char *)&a;
why we are used (char *) here

Vignesh said:   1 decade ago
Hi, can anyone tell me in what way the given program helps us to find the answer for the given question.

Megha tavrech said:   1 decade ago
I didn't understand this.

How it get executed.

P= (char *) &a;.

Thientran said:   1 decade ago
@Reka: Standard for Floating-Point Arithmetic is Ieee754

Anand upadhyay said:   1 decade ago
Thanks preeti.

Siri said:   1 decade ago
How to normalize a no can any one help me.

Sirisha said:   1 decade ago
p=(char *)&a;
satish i thik (char*)this is for type casting as
a is float and p is char

Shiva said:   1 decade ago
Thanks preethi...!

Nnnn bbbbb said:   1 decade ago
How do we decide whether to use big endian or small endian?

Pramod Jarhad said:   1 decade ago
I think preethi is correct.


Post your comments here:

Your comments will be displayed after verification.