ChinaUnix.net
相关文章推荐:

无符号整数减法

如果 int a和b都等于30亿 相加=60亿 那结果应该是long型的 为什么编译器自动给截成32位呢 为什么 两个都是有符号的相加溢出就提示呢 从《c陷阱与缺陷》上看到的 有点不明白 在问个include是静态连接还是动态链接? [ 本帖最后由 houtinghua 于 2008-5-13 17:56 编辑 ]

by houtinghua - C/C++ - 2012-11-27 14:32:07 阅读(4711) 回复(10)

相关讨论

实现一个128为符号整数,32位机器上可以用4个unsigned long或16个char来表示。 对于16个char的方法,按其单位char,log的值实现时可以构造一个大小256的对数表数组。而对于4个unsigned long的实现,如何获得最好的性能?

by gnap - C/C++ - 2006-03-10 21:46:39 阅读(1029) 回复(0)

我现在正在找一个哈希函数,能够将一个由IP地址转成的unsigned long型整数映射为在大于等于0,小于某值的整数索引。 目前我找到了两个,代码如下: 1. static inline unsigned hashkey(unsigned int dest_ip) { return (dest_ip* 2654435761UL) & HASH_TAB_MASK; } /*其中,2654435761UL是2到2^32 (4294967296)间接近于黄金分割的素数, (sqrt(5) - 1) / 2 = 0.618033989 2654435761 / 4294967296 = 0.618033987 */ 2....

by anle - C/C++ - 2003-02-14 16:51:20 阅读(2509) 回复(12)

闲来事,写了段小C代码,贴上来玩玩,哈哈哈~ /***************************************************************** * 实现两个unsigned int 类型的整数相乘,结果保存在两个unsigned int变量 * 中。其基本思想是把unsigned int分拆为两个unsigned short分别相乘,就和 * 做2位十进制数的乘法一样一样的,只不过一个是逢10进位,一个是逢0x10000进位 *****************************************************************/ ...

by xdsupermanli - C/C++ - 2009-02-28 17:44:46 阅读(1069) 回复(0)

今天在翻看自己的C语言笔记的时候看到有记 “8进制和16进制只能用来表达符号的正整数” ,仔细想想不是太明白, 为什么不可以表示有符号的数据呢? 有什么更深层次的原因吗? 还望大侠们赐教啊 ~

by king_boss - C/C++ - 2007-10-18 23:22:06 阅读(5506) 回复(18)

这也是很有趣的问题,非常利于了解位模式。 题目:给定一个符号整数(这里用符号数是为了排除符号扩展的干扰),如何截断到指定的位数。例如给一个unsigned long a = 0xFFCE; 指定截断到8位得到的结果为0xCE,截断到4位得到的结果为0xE。好了,如果截断到3位?5位?怎么才能高效实现呢? 提示:参考http://bbs.chinaunix.net/viewthread.php?tid=872702&extra=page%3D1中whyglinux 所引用的c标准,线索就在里面哦:mrgreen: ...

by zx_wing - C/C++ - 2006-12-21 18:12:07 阅读(6288) 回复(67)

如题,我看到如下代码 [code] char * my_inet_ntoa(unsigned int ina) { static char buf[16]; unsigned char *ucp = (unsigned char *)&ina; sprintf(buf, "%d.%d.%d.%d", ucp[0] & 0xff, ucp[1] & 0xff, ucp[2] & 0xff, ucp[3] & 0xff); return buf; } [/code] 我不明白为什么要和0xFF做&操作,我觉得写成 [code] char * my_inet_ntoa(unsigned i...

by fzy8888cn - C/C++ - 2006-09-18 19:14:04 阅读(2225) 回复(8)

char * unsigned char * int unsigned int 理论上的区别我也知道,具体应用时怎样采用合适的形式呢(什么时候用有符号好 什么时候用符号好) 谁能举例说明:)

by Jass - C/C++ - 2007-12-21 21:22:52 阅读(1679) 回复(6)

符号数和符号数加减,结果是有符号,还是符号? 有符号数和符号数乘除,结果是有符号,还是符号

by ATmega32 - C/C++ - 2007-07-20 19:56:45 阅读(1662) 回复(1)

MySQL版本:5.1.30 GUI工具:Navicat for MySQL 8.0.29 table name:client column name:IP(点段式的四节IP) 现在我有两个需求: 一、使用INET_ATON函数将四节点段式IP转为有符号整数符号整数存储 二、不用存储,但在建立的视图中使用INET_ATON函数将IP转换成整数,但它转换后的值是符号整数,也就是值的范围0到4294967295, 这本来是挺好的,但我要导出到Access中去,Access的长整型仅支持-2147483648到2147483647,也就是...

by vinhlam - MySQL - 2009-02-25 19:53:04 阅读(2398) 回复(13)

请问为什么有符号正数0x8000001 加1 结果是0x80000002 而不是0x80000000 呢? 它的计算过程是怎样的? 0x80000001 的补码不是 1111 1111 1111 1111 1111 1111 1111 1111 吗?

by yoshubom - C/C++ - 2008-11-01 14:19:06 阅读(1789) 回复(8)