Search code examples
cansi-c

Exceeding unsigned boundary


#include <stdio.h>
int main ()
{
unsigned char a=250,b=20, c;
c=a+b;
printf ("%d\n",c);
return 0;
}

What can I do for it to show 270? Besides declaring c as int.


Solution

  • Unsigned char's (assuming char is only eight bits) can only represent 28 numbers, from 0 to 255. You'll need to use another type such as int to represent this.