1,c问题求教哇unsigned a255char ba则b

unsigned char a=255;char b=a;则b=?-1unsiged char 是无符号字符型0~255char是有符号字符型-128~127
unsigned char的取值范围为从0到255.将258赋值为unsigned char类型的值是258%256=2;所以b的值是2

c问题求教哇unsigned a255char ba则b

2,unsigned char什么意思

unsigned char意思是:无符号字符;无符号字符型;字节;无符号数;无符号的
unsigned char是字符类型。无符号字符; 无符号字符型; 字节; 无符号数; 无符号的;char是c/c++整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如psos的编译器,还可以通过编译开关来指定它是有符号数还是无符号数。

unsigned char什么意思

3,unsigned char byte

看样子,这写的是一个spi传输协议的一个读函数。因为这种程序是与硬件紧密相关的,所以以下也只能是猜测。1. 此函数是用来从 spi从设备上读取数据的。2. 这种数据的读取,是以写入数据为前提的。即只有向里写8位,才能读出8位。3. unsigned char byte 中 声明了一个为无符号8位的char类型byte变量,unsigned char 是类型,byte是变量名。 SPIODAT 应该是SPI总线的数据寄存器,SPIODAT = byte就是表示向寄存器中写入数据。 while(!SPIF) SPIF 应该是SPI总线的标志位。表面意思是当SPIF = 0 是无限循环,其实就是来等待SPI总线数据传输完毕。 SPIF = 0 当数据总线传输完毕后,SPIF应该是等于1的。因为下面要读出数据,所以在这里设置为0,表示数据已经读出,为下次数据传输做准备。 return SPIODAT,就是刚从 SPI从设备上读取的数据。 这里的0xFF其实是没有什么意义的,只是用来从 SPI从设备上读取数据而凑齐的8位数据。(但我不确定其它值可以不可以,因为有的规定在读取数据时,必须写入这个值0xFF)

unsigned char byte


文章TAG:unsignedunsigned  char  多少  
下一篇