what is output of the following statetment?Printf(“%x”,
-1<<4); ?
Answers were Sorted based on User's Feedback
Answer / sasmita lenka
Answer fff0.........As -1 is internally represented as as
all 1's.When left shifted four times the least significant 4
bits are filled with 0's.The %x format specifier specifies
that the integer value be printed as a hexadecimal value.
| Is This Answer Correct ? | 14 Yes | 1 No |
Answer / ankurmohansharma
In case of 16- bit compiler answer will be fff0
In case of 32-bit compiler answer will be fffffff0.
Reason being same as of above two
| Is This Answer Correct ? | 7 Yes | 0 No |
here the equivalent representation for -1 in memory is it's
two's compliment notation..... so alll the 16 bits will be
HIGH (1).... so four time we are moving the bits left
side.... so after that it will result as 65520.... the
equivalent HEX value for 65520 will get printed.........
thank u
| Is This Answer Correct ? | 5 Yes | 4 No |
Question is -1<<4
Answer to 16bit compiler
As -1 is a negative number,so compiler first convert this number with removing negative sign to 2's complement
Here -1 is given
so compiler first removes the -ve sign and then convert to 2's complement
Binary form of 1 for 16 bit compiler is 0000 0000 0000 0001
1's complement of 1 is 1111 1111 1111 1110
2's complement of 1 is 1111 1111 1111 1111(1+1's complement)
now do the left shift operation
1111 1111 1111 1111 << 4
which results 1111 1111 1111 0000
i.e equivalent to FFF0 in hex format
So the answer is FFF0 for 16 bit compiler
And for 32 bit compiler it is FFFF FFF0 (do same operation as 16 bit compiler)
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / ranjith
-1 is stored as '1' 32 times [i.e. ffffffff], doing a left
shift 4 times results in '1' 28 times followed by 4 zeros.
[i.e. in hexadecimal ffffffff0].
Therefore the output for the above printf is fffffff0.
Thanks,
Ranjith
| Is This Answer Correct ? | 5 Yes | 6 No |
12. Look at the Code: main() { int a[]={1,2,3},i; for(i=0;i<3;i++) { printf("%d",*a); a++; } } Which Statement is/are True w.r.t the above code? I.Executes Successfully & Prints the contents of the array II.Gives the Error:Lvalue Required III.The address of the array should not be changed IV.None of the Above. A)Only I B)Only II C)II & III D)IV
what is the difference between declaration ,defenetion and initialization of a variable?
#define MAX 3 main() { printf("MAX = %d ",MAX ); #undef MAX #ifdef MAX printf("Vector Institute”); #endif }
What is the use of extern in c?
How is a pointer variable declared?
how can i include my own .h file EX:- alex.h like #include<alex.h>, rather than #include"alex.h"
Write a program for the following series: 1*3*5-2*4*6+3*5*7-4*6*8+.................up to nterms
3. Program to print all possible substrings. ex: String S St Str Stri Strin String t tr tri trin tring r
12344321 123 321 12 21 1 1 how i print this program??
5 Answers DSR Management, Winit,
Why we not create function inside function.
exit () is used to a) exit () terminates the execution of the program itself b) exit () terminates the execution of the loop c) exit () terminates the execution of the block d) none of the above
Is main() function predfined or userdefined?