|
![]() | 作者: sniper167 [sniper167]
![]() |
登录 |
main() {unsigned a,b,c; int n; scanf ("a=%o,n=%d",&a,&n); b=a<<(16-n); c=a>>n; c=c|b; printf ("%o\n%o",a,c); } 这种移位能不能用于十进制? 我试了一下,十进制时移位出错。 十进制能不能用位运算来进行移位? 如果能,有哪些需要改动? |
地主 发表时间: 04-02-24 12:33 |
![]() | 回复: 286 [unique] ![]() |
登录 |
十进制肯定不行。 因为你的程序中用一个十进制的数,但到内存中,全部都会转换为二进制,所以进行的还是二进制的移位。如果需要,你可以自己编写一个。比如要右移,就让他除以10,左移就乘以10。 |
B1层 发表时间: 04-02-24 13:28 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号