没关系,在很多情况下,编译警告并不影响程序的运行。51中,将一个字节的unsigned char 变量,赋值给2个字节的unsigned int,编译提示“warning"是正常的,但如果将小数变量赋值给整数、或将int赋值给char的警告,就得适当关注一下,因为此时,有丢失精度的风险。更多交流,请访问我空间。
这个问题,因为不知道你具体的使用环境,没法作出进一步的判断,只能将 unsigned char型的变量赋给一个int型的变量会发生什么事情告诉你。unsigned char a = 'A';int b = -1666666;b = a;由于unsigned char类型的变量只有一个字节,而int类型有4个字节,当将一个unsigned char类型的变量赋给一个int...
楼上的这方法不错.在特殊的时候用的着.不过,我要把两个char型数据组合成int型,一个做为int型的高...
设有语句: ``` int a=258,b; unsigned char c; b=c=a; ``` 则b的值为___。 (答案:2) (一)int 类型和char类型之间强制类型转换的规则 ```将int类型变量i的值赋给char类型变量c,会将i的值当作一个ascii码赋给c。 int a=51
unsigned char,unsigned int,char的区别? int ( = signed int)型数据范围不同,无符号型数据没有正负之分,而带符号数因为需要用一... int (= signed int) -32768 ~ +32767unsigned int 0 ~ 65535char (=si... C语言中unsigned char和unsigned int的区别? int ( = signed int)型数据范围不同,无符号型...
试一试atoi函数 或者直接这样:unsigned int a=0;unsigned char b=0x34;a | =b;a里面就是b的值了
比如要把一个数据的长度,赋值到16位的unsigned char中,或者WORD的中方法: unsigned char len = 0; char buf[2]; len = 65534 memcpy(buf,&len,2); 这样memcpy后,就把65534赋值到了16位的unsigned char类…
由于C语言中的浮点值总是用双精度表示的,所以float 型数据只是在尾部加0延长为doub1e型数据参加运算,然后直接赋值。doub1e型数据转换为float型时,通过截尾数来实现,截断前要进行四舍五入操作。 (3) char型与int 型 int型数值赋给char型变量时,只保留其最低8位,高位部分舍弃。
void CharToInt(char b[],int &a){ unsigned char * pa = (unsigned char *)&a;for(int i = 0;i<4;i++){ pa[i] = b[4-i];} }