请教好心人帮我讲讲为什么下面的C语言输出是a1=127,a2=127,b1=-127,b2=129
#include <stdio.h>main()
{
char a1,b1;
unsigned char a2,b2;
a1=127; b1=129;
a2=127; b2=129;
printf("a1=%d, a2=%u, b1=%d, b2=%u\n",a1,a2,b1,b2);
}
2012-08-10 17:34
2012-08-10 17:55
2012-08-10 19:40
2012-08-10 19:43
2012-08-10 20:01


2012-08-10 20:03
2012-08-10 21:30
2012-08-10 22:21