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;
}
Discussion:
117 comments Page 12 of 12.
Pramod Kumar said:
1 decade ago
p = (char*)&a;
Can anyone explain meaning of this line?
Can anyone explain meaning of this line?
Shubham Gorde said:
10 years ago
For little Indian method, least significant bytes stored first (means at lowest address).
Address value.
503 0100 0000.
502 1010 1100.
501 0000 0000.
500 0000 0000.
And statement p = (char *) &a:: stores low byte address (i.e 500 here) of 1 into p (as p is char pointer).
So answer is 00 00 AC 40.
Address value.
503 0100 0000.
502 1010 1100.
501 0000 0000.
500 0000 0000.
And statement p = (char *) &a:: stores low byte address (i.e 500 here) of 1 into p (as p is char pointer).
So answer is 00 00 AC 40.
Usman ali ar said:
10 years ago
Why it is C than B?
Shyam said:
10 years ago
Hi answer is C please any one can explain?
Rahul said:
10 years ago
0100 -> 4
0000 -> 0
1010 -> A
1100 -> C
0000 -> 0
0000 -> 0
0000 -> 0
0000 -> 0
How to convert this why we are using 4, A, C, 0, 0?
0000 -> 0
1010 -> A
1100 -> C
0000 -> 0
0000 -> 0
0000 -> 0
0000 -> 0
How to convert this why we are using 4, A, C, 0, 0?
Raji said:
9 years ago
Thank you so much @Preethi.
Megha Verma said:
9 years ago
Thank you so much @Shilpa M.Raj. Your explanation is really good and clear.
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers