Can I declare a variable by 2 data type? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 1

Can I declare a variable by 2 data type?

When we have a calculation like "a/b", we have not known the value of a or/and b. So we have not known exactly the value of "a/b" is an integer or a float. I want to know exactly the value of "a/b". If a=7, b=2 => a/b = 3.5 For instance: { int a,b; int i; double i; i = a/b ; } Can I ?

5th Jul 2016, 9:24 AM
Tien Thanh Nguyen
Tien Thanh Nguyen - avatar
9 Answers
+ 3
try 'union' ... ... union X { int a; float b; }x; ... ... { double i; int p,q; ....//input p and q i = p/q; if (p%q==0) x=(int)i;//x will behave like a int else x=(float)i;//x will behave like a float ... ... } try googling it for better understanding
5th Jul 2016, 4:41 PM
Mukul Kumar
Mukul Kumar - avatar
+ 2
Just (double)a/b or a/(double)b.
5th Jul 2016, 2:31 PM
CWB
+ 1
Sorry, I had not presented clearly
5th Jul 2016, 9:35 AM
Tien Thanh Nguyen
Tien Thanh Nguyen - avatar
+ 1
Thanks. I think I have to learn more
6th Jul 2016, 12:07 AM
Tien Thanh Nguyen
Tien Thanh Nguyen - avatar
0
It will give you an error.
5th Jul 2016, 9:31 AM
Satan 666
Satan 666 - avatar
0
you should cast a or b to be a double, because if not, a/b -> int/int -> int.
5th Jul 2016, 1:11 PM
Garme Kain
Garme Kain - avatar
0
you can use type casting
6th Jul 2016, 4:43 PM
Ruchir Gupta
0
no dear, it is wrong
18th Jul 2016, 8:41 AM
meherDev
meherDev - avatar
0
{ int a=7, b=2; float i; i=a/b; cout<<"i= "<<i<<endl; return 0; }
18th Jul 2016, 8:45 AM
meherDev
meherDev - avatar