[心得]
unsigned char 型別定義為 範圍從 0 至256
char 型別定義為範圍從 -128 至 +127 的系統上,
int 0x80,(其值等於 +128)要轉成 char 會放不下,會產生編譯器自行定義的值。
#include <stdlib.h>
int main()
{
unsigned char a =0X80;
char b =0X80;
printf("a= %d\n",a); //128
printf("b= %d\n",b); //-128
if(a == 0X80) printf("a is true\n");
if(b == 0X80) printf("b is true\n");
system("pause");
}
/*結果 a is true!*/
沒有留言:
張貼留言