winnie 发表于 2009-3-28 10:32:40

C语言赋值的问题

代码如下:
  unsigned int page;
       unsigned char flash;
      flash=page&0x00ff;
      flash=page>>8;
请问各位能不能这么写,我写了以后编译时给了个warning。不知道跑起来会不会影响
这里是将int拆解为两个char(高位和低位).虽然我可以用union联合,但是使用联合对我整体程序调用不利,故采用这一办法。

winnie 发表于 2009-3-28 10:33:12

这个问题是W77E58的,51系列的。warning说,"变量:different types"

winnie 发表于 2009-3-28 10:33:18

改成這樣應該就不會有 warning 啦

unsigned int page;

unsigned char flash;

flash = (unsigned char) page;// 用 type casting 直接取出低字節

flash = page>>8;
页: [1]
查看完整版本: C语言赋值的问题