long-integer相关内容
我需要将double转成long保留其二进制结构,而不是数值。只是改变类型,但保留二进制值。 解决方案 有 Double 与doubleToLongBits和doubleToLongRawBits。 Javadoc是您的朋友。
..
我知道有精确错误的奇怪的东西,但我不能欺骗, 为什么(长)9223372036854665200d 给我 9223372036854665216 ? 解决方案 9223372036854665200d 是 double 类型的常量。但是, 9223372036854665200 不适用于 double ,且不会损失精度。 double 只有52位尾数,而有问题的数字需要63位来精确表
..
我一直在寻找在长到 int 遇到麻烦的Google用户,而不是其他方式周围。但我相信我不是唯一一个遇到这种情况之前从 int 到长 。 我发现的唯一其他答案是“只是设置为Long在第一位”,这真的不解决问题。 有人可以帮助我吗?我最初尝试铸造,但我得到一个“无法从int转到长” for(int i = 0; i content = new Content(); conte
..
我有这段代码: struct timeval start,end; gettimeofday(& start,NULL); // code我在计时 gettimeofday(& end,NULL); long elapsed =((end.tv_sec-start.tv_sec)* 1000000 + end.tv_usec-start.tv_usec); ofstrea
..
将size_t转换为long有什么缺点吗?因为,我在写一个程序,在文件中维护linked_list。所以我遍历到另一个基于size_t的节点,我也跟踪列表的总数为size_t。因此,显然有一些转换或添加long和size_t。这有什么缺点吗?如果有,那么我会使一切都长,而不是size_t,甚至尺寸。请指教。 解决方案 这不是一个问题,但它可能是在将来,这取决于你将移植你的应用程序。这是因为
..
不是一个很好的标题,但我不知道该命名它。 无论如何,我计算的总帧数FPS)在我的游戏中与 long int 。为了万一游戏持续很长时间,我应该怎么做,以确保我的 long int 没有增加超过其限制? 感谢。 解决方案 整个游戏的整个长度的平均FPS似乎不是一个非常有用的统计。通常,您将希望测量峰值和谷值,例如最高fps /最低fps和低于和高于阈值的帧数。在现实中,我不会担心
..
我在写一个程序,在一个文件中维护一个linked_list。所以我遍历文件,通过使用tellp()/ tellg()并将其添加到一个特定的长整数(可以看作是一个偏移量)到达新的位置。 一个简单的例子是 long next_offset = sizeof(long)+ sizeof b $ b //像记录中所有元素的大小,等等 curr_node = out.seekg();
..
我正在编写一个程序,以每32位为单位(即每次4个字节)将数据存储到文件中。我在64位Windows系统中编写代码,但我使用的编译器是32位(mingw32)。在当前系统中,int的长度大小相同,为32位(4bytes)。我目前通过使用g ++重新编译(不更改代码)将代码移植到其他系统。然而,我发现int或long的大小是不同的,取决于系统。这是任何方式(如在头文件中使用宏)来确定整数的大小,以决定
..
我想在Windows(MinGW)和Linux(g ++)的C ++中编写跨平台代码。我习惯于在Linux中定义64位整数为“long”,但是当我移动到MinGW时,sizeof(long)返回4个字节。然后我发现我可以使用“long long”或“__INT64”在MinGW中定义64位整数。我有两个问题: 1.-为Windows和Linux定义64位整数的最便携的方式是什么?使用#ifd
..
我理解“自然大小”是由特定硬件最有效处理的整数宽度。在数组或算术运算中使用 short 时, short 整数必须首先转换为 int 。 我不是在寻找简单的答案,例如 32位架构,它的自然大小是32位 我想了解 这是最高效的, 为什么 必须在对其执行算术运算之前转换 short 。 奖金Q:当对 long 整数进行算术运算时会发生什么? 解决方案 “自然大小”是
..
我使用Ubuntu 10.10(64位)与 gcc ,我想在我的C ++程序中使用64位整数。 在我的系统上输出 sizeof(long), )和 sizeof(int64_t)都是8字节(64位)。 哪个限定符( long , long long int64_t )你会建议使用64位整数吗? 解决方案 int64_t - 这是因为它是最便携的表示。其他两个可以在其他机器上表示
..
我预计尺寸会有所不同。但两者都显示为8bytes。 #include using namespace std; int main() { cout
..
在C ++中从字符串中检索无符号长整数的最安全和最好的方法是什么? 我知道一些可能的方法。 首先,转换从atol签署的长。 char * myStr; //以某种方式体验到某种价值。 unsigned long n =((unsigned)atol(myStr)); 这是一个明显的问题,当myStr中存储的值大于一个有符号long可以包含? atol检索是
..
我有一个 unsigned long long (或 uint64_t )值,并想将其转换为 double 。 double将具有与 long 值相同的位模式。这种方式我可以设置双“手动”的位。 无符号长位= 1ULL; double result = / * some magic here * / bits; 我正在寻找一种方法。 解决方案 这样做的便携式方法
..
我有一个 unsigned long long (或 uint64_t )值,并想将其转换为 double 。 double将具有与 long 值相同的位模式。这种方式我可以设置双“手动”的位。 无符号长位= 1ULL; double result = / * some magic here * / bits; 我正在寻找一种方法。 解决方案 这样做的便携式方法
..
我已经在C ++中编程了很长时间了,我非常熟悉大部分的东西。一个我从来没有理解的东西是“长”的数据类型。 我googled它,但我还是不知道它是什么。我发现的页面,它是相同的大小和具有相同的范围作为一个int。 我在这里发现了另一个堆栈溢出问题: ”/ com / questions / 900230 / difference-in-long-vs-int-data-types-
..
如何从long long转换为int,另一种方式回到c ++? 还有什么是long long的属性,特别是它的最大尺寸, 谢谢提前.. 解决方案 p> type long long通常为64位。 类型int可能是32位,但不是所有机器。 如果你把一个int转换为一个long long,你可以做 my_long_long =(long long)my_int
..
我有一个很基本的问题,但我不知道我是否理解这个概念。假设我们有: int a = 1000000; int b = 1000000; long long c = a * b; 当我运行这个时,c显示负值,所以我改变了a和b为long long,然后一切都很好。所以为什么我必须改变a和b,当他们的值在int的范围,并且他们的产品被分配到c(长long)? 使
..
可能重复: 如何printf uint64_t? 为什么我在64位的Mac(我使用Clang) uint64_t 类型是 unsigned long long uint64_t 类型是 unsigned long ? 这让我很难得到我的 printf 调用不给编译器警告工作)。 我可以尝试使用宏尝试选择正确的字符串( #define LU c>%llu 或%lu ,并且在处
..
我发现 long int long 和 int long long 可以编译变量类型。在 long int long , int long long , long long 和 long long int ? 一般来说,如果类型相同 long ? 1个长: b $ b long l; int long il; long int li; 2长:
..