[LCP]puzzling
Anandakumar.Thangaraju at EchoMail.com
Anandakumar.Thangaraju at EchoMail.com
Fri Feb 28 18:04:02 UTC 2003
Go thru the following modified application. Instead of working with
original expressions, I assigned the value to Double var and added a
function LBinary to print the Binary representation of given long. By this
we can learn that printf is just doing a BLIND printing of given address to
the given type. To assert that I copied the first 4 byte of the double to a
long variable. As expected the binary representation of long "1202590843"
and the 4 byte copied are same.
#include <memory.h>
void LBinary(unsigned long No)
{
unsigned long Mask = 1<<31;
for (int index=0;index<32;index++, Mask>>=1)
{
if (No & Mask)
printf("1");
else
printf("0");
}
}
void main()
{
long t;
double d = 3065.4400; // This is result of your original
Expression.
printf("\nDouble as Long = %ld",d);
printf("\nDouble as Double = %f",d);
// Move the first 4 Bytes of the Double (8 byte) to Long
// Note : No casting is done here.. we're doing DUMP transfer
memcpy((void*)&t, (void*)&d, 4);
printf("\nBinary for Long (1202590843) : "); LBinary(1202590843);
printf("\nBinary for T : "); LBinary(t);
printf("\n");
}
Regards,
Anandakumar Thangaraju,
Millennium Software Productions (India) Pvt Ltd,
1, Kuppusamy Street,
T.Nagar, Chennai-600017.
Tel : 28157724/25 x 124
Mail : anandakumar at echomail.com
Kurian Abraham Kurian
Abraham-A18108 To: linuxcprogramming at lists.linux.org.au
<kurian.abraham at motorola.com> cc:
Sent by: Subject: [LCP]puzzling
linuxcprogramming-admin at lists.li
nux.org.au
02/24/03 11:37 AM
Please respond to
linuxcprogramming
hi
i have a question.....
int main()
{
long a = 13;
long b = 197;
long c ;
c = (b-a)*16.66;
printf("\nAmazing = %ld",(b - a)*(16.66));
printf("\nC is %ld\n",c);
return 0;
}
pls run this program....and tell me why the answers r different?
thanx & regds
kurian
_______________________________________________
This is the Linux C Programming List
: http://lists.linux.org.au/listinfo/linuxcprogramming List
More information about the linuxCprogramming
mailing list