954,554 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

why is double data type giving an garbage value

hi

i am using a variable as double
and passing pointer of it as parameter to an api
this is all hapening in JNI.
after i read the value i am getting an garbage value
can anybody tel me y is it hapenning,
using an float variable instead of double solves my problem.
but y is double so.

vps
Newbie Poster
10 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

hmm, you seem to be missing the w and h keys on your keyboard.

As to your "problem", your native program is probably setting the value to a 32 bit floating point number.
Double in Java is a 64 bit floating point number. Either use a 64 bit floating point data type in the native code or use float in Java which is 32 bit.

jwenting
duckman
Team Colleague
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
 

Thanx for the reply

but why is it giving me an value like 7.16485306107743e-040 , n if i run in while loop it gives me different value each time even after the variable is intialized to ZERO i.e. 0.00

vps
Newbie Poster
10 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

http://docs.sun.com/source/806-3568/ncg_goldberg.html has the answers to that.
It's a must read for anyone working with floating point arithmetic.

Basically what you're seeing is the imperfection of the storage of floating point numbers in fixed precision numbers based on integers (which is how every computer stores them).

jwenting
duckman
Team Colleague
8,392 posts since Nov 2004
Reputation Points: 1,662
Solved Threads: 337
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You