Why doesn't the code "int a = 1000, b = 1000;
long int c = a * b;" work?
Answers were Sorted based on User's Feedback
Answer / larry
This won't work if int is a 16-bit size because 1000000 >
32767 (2 to the 15th - 1). It will work when int is a 32-
bit number. It will work if you cast a or b to a long.
| Is This Answer Correct ? | 5 Yes | 0 No |
Answer / thirupathi reddy katkoori
Integer range exceeds if multiply both the variables the resultant value does not to store it. Due to exceeding the int range only we have to declare it as long int and the value is store in c
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / guest
You must manually cast one of the operands to (long).
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / vikraman85
I think mostly we should avoid assigning the variables while
declaring with the variables of another datatype..
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / komal
it wont work as we have to declare the variable 'b'
again...we can not declare it like int a=10,b=3;
it has to b like int a=10;
int b=6;
| Is This Answer Correct ? | 0 Yes | 4 No |
plz let me know how to become a telecom protocol tester. thank you.
What is the use of the function in c?
what is the difference between %d and %*d in c languaga?
write a program to remove occurrences the word from entered text?
Sir i need notes for structure,functions,pointers in c language can you help me please
Compare interpreters and compilers.
What are the different types of storage classes in C?
What are the advantages of c preprocessor?
difference between object file and executable file
Why is event driven programming or procedural programming, better within specific scenario?
What are the 5 organizational structures?
What is an operator?