當把較長的整數轉化為較短的整數或是char類型時,超出的高位部分將被丟棄。
程序一:
#include <stdio.h>
int main()
{
int i;
char c;
i=65535;
c=48;
i=c;
c=i;
printf("char=%c\n",c);
printf("int=%d",i);
getchar();
}
輸出為:

程序二:
#include <stdio.h>
int main()
{
int i;
char c;
i=65535;
c=48;
c=i;
i=c;
printf("char=%c\n",c);
printf("int=%d",i);
getchar();
}
輸出為:

因為c=-1,所以字符不可見
當較低類型的數據轉換為較高類型時,一般只是形式上有所改變, 而不影響數據的實質內容, 而較高類型的數據轉換為較低類型時則可能有些數據丟失。
本文出自 “驿落黃昏” 博客,請務必保留此出處http://yiluohuanghun.blog.51cto.com/3407300/1153598