0 votes 0 votes unsigned int i=1; int j=-4; printf(“%u”,i+j); what is printed by following program fragments? answer is given as “an integer that changes from machine to machine”. eyeamgj asked Nov 25, 2018 eyeamgj 519 views answer comment Share Follow See all 5 Comments See all 5 5 Comments reply Show 2 previous comments Mk Utkarsh commented Nov 25, 2018 reply Follow Share I think Integers are stored in 2's complement form so convert -4 to 32 bit 2's complement but if the same number is interpreted as unsigned then sign will be positive and just the magnitude will be considered and sign bit is MSB for the unsigned number. 0 votes 0 votes Deepanshu commented Nov 25, 2018 reply Follow Share i think integer size in various computers computers different thats why 0 votes 0 votes yuyutsu commented Jun 28, 2022 reply Follow Share That's because int size may vary. But generally int size is 4B. So for this you will get some big value. And not -3. But had it been printf("%d", i+j); Then you would get -3. 0 votes 0 votes Please log in or register to add a comment.