long-long相关内容

为什么 C 编译器将 long 指定为 32 位,将 long long 指定为 64 位?

在 128 位数字成为现实之前制作 64 位长的数字并保留 long long 不是更有意义吗? 解决方案 是的,确实有道理,但微软有自己的理由将“长"定义为 32 位. 据我所知,目前在所有主流系统中,Windows 是唯一一个“长"为 32 位的操作系统.在 Unix 和 Linux 上,它是 64 位. Windows 的所有编译器都会在 Windows 上将“long" ..
发布时间:2021-11-26 14:47:18 其他开发

为什么 C 编译器将 long 指定为 32 位,将 long long 指定为 64 位?

在 128 位数字成为现实之前制作 64 位长的数字并保留 long long 不是更有意义吗? 解决方案 是的,确实有道理,但微软有自己的理由将“长"定义为 32 位. 据我所知,目前在所有主流系统中,Windows 是唯一一个“长"为 32 位的操作系统.在 Unix 和 Linux 上,它是 64 位. Windows 的所有编译器都会在 Windows 上将“long" ..
发布时间:2021-11-24 23:34:41 C#

3 * 1000000000作为int溢出,但是变量long long.为什么?

我有一个简单的c ++应用,可以执行以下计算 long long calcOne = 3 * 100000000;//3e8,本质上long long calcTwo = 3 * 1000000000;//3e9,本质上long long calcThree = 3 * 10000000000;//3e10,本质上 如果我写下每个计算的结果,则会得到以下输出: calcOne = 30 ..
发布时间:2021-05-30 19:35:45 其他开发

截断整数除法

如何避免在此代码中截断整数除法?我的排序数组是 1 1 1 1 1 1 ,所以a [0] = 1和a [n]应该是1/2 = 0.5. int main(){长长n,w;scanf(“%lld%lld",& n,& w);long long arr [2 * n];for(long long i = 0; i ..
发布时间:2021-05-01 18:33:33 其他开发

-9'223'372'036'854'775'808LL未签名

由于C ++ 20的二进制补码表示法是标准允许的唯一表示法,保证范围为-2 N-1 至+2 N-1 -1.因此,对于64位带符号整数类型,范围从 -9'223'372'036'854'775'808 到 9'223'372'036'854'775'807 .但是,此代码无法在Visual Studio上编译(也不能在gcc上编译) int main(){长长x {-9'223'372'036' ..
发布时间:2021-04-19 18:52:56 其他开发

如何使用printf格式化unsigned long long int?

#includeint main(){unsigned long long int num = 285212672;//FYI:适合29位int normalInt = 5;printf(“我的数字是%d字节宽,其值是%ul.正常数字是%d.\ n",sizeof(num),num,normalInt);返回0;} 输出: 我的数字是8个字节宽,其值为285212672 ..
发布时间:2021-04-17 18:32:49 其他开发

如何检查A + B是否过长? (A和B都很长很长)

我有两个数字: A 和 B 。我需要在代码中的某处计算 A + B 。 A 和 B 都是 long long ,他们可以是正面还是负面。 我的代码运行错误,我怀疑在计算 A + B 。我只是想检查 A + B 是否超过 long long 个范围。因此,任何方法都是可以接受的,因为我仅将其用于调试。 解决方案 仅当两个数字相同时才可能溢出标志。如果两者均为正,则数学上 A + B> ..
发布时间:2020-09-27 00:53:21 其他开发

以C为模的大数的幂

我正在使用以下函数来计算以m为模的大数的幂,其中m是任何整数,即(a ^ b)%m long long power(long long x,long long y,long long p) { long long res = 1; //初始化结果 x = x%p; //更新x如果大于或等于 //等于p 而(y> 0) { //如果y为奇数,如果(y& 1) res ..
发布时间:2020-06-03 21:30:08 其他开发

long long vs int乘法

给出以下代码段: #include typedef signed long long int64; typedef signed int int32; typedef signed char int8; int main() { printf("%i\n", sizeof(int8)); printf("%i\n", sizeof(int32)); ..
发布时间:2020-05-13 19:19:01 其他开发

在PIC上使用long long时的舍入问题

我正在PIC单片机上做一些简单的数学运算,用C语言运行代码,并使用MPLABX和xc16编译器.这是代码: double mydouble = 0.019440; long long int mypower = 281474976710656; long long int result = mypower*mydouble; 打印出“结果"后,我得到了5,471,873,794,048 ..
发布时间:2020-05-06 10:53:48 其他开发

将long long转换为C中的字符串?

我想将长整数转换为C中的字符串。 long long x = 999; 我想将x转换为字符串。 感谢。 解决方案 $ p> long long x = 999; char str [256]; sprintf(str,“%lld”,x); printf(“%s\\\ ”,str); ..
发布时间:2016-11-13 23:17:44 其他开发

令人不安用C长长转换字符串

我遇到麻烦环礁功能正确设置在C长长的价值。这是我的例子: 的#include<&stdio.h中GT;诠释主要(无效){ 个char [30] = {“115”}; 长长的T =环礁(S); 的printf(“Value是:%LLD \\ n”,T); 返回0; } 这将打印: 值为:0 这工作虽然:的printf(“Value是:%LLD \\ n”,环 ..
发布时间:2016-08-19 13:43:06 C/C++

C编译器为什么指定长为32位和long long是64位?

那岂不是更有意义,使长64位和长长的保留,直到128位的数字成为现实? 解决方案 是的,这有一定道理,但微软有自己的理由定义为32位“长”。 据我所知,所有现在主流的系统,Windows是“长”是32位的唯一操作系统。在Unix和Linux,它是64位的。 对于Windows所有的编译器编译“长”在Windows 32位,以保持与微软的兼容。 由于这个原因,我避免使用“Int”和“长 ..
发布时间:2016-08-18 23:19:20 C/C++

我应该使用long long或为的int64_t便携式code?

我有一个是写在C和C ++的开放源代码codeBase的。我在寻找这是保证是一个整数类型的至少的64位宽,可与开源的C可靠地编上最OS X(英特尔64位)和Linux系统和C ++编译器,而对最终用户的部分太多额外的工作。 Windows和32位客户端的支持并不重要,在这个时候。 我没有在OS X上一些测试,并附带的开发工具不支持C + 11模式(因此似乎并不保证长长)。锵不支持此项工作,要么, ..
发布时间:2016-08-18 23:13:18 C/C++

什么样的数据类型是英寸长很长"?

我不知道这种类型。是,从所有的最大的一个?我认为这是一个整数类型,对不对?或者是一个浮点的事情吗?超过一倍更大? 解决方案 它的一个整数,至少大如长。 ..
发布时间:2016-08-18 14:23:08 C/C++

sprintf的无符号_int64

我有以下code。在sprintf的第二个%的D输出始终显示为零。我想我是错了指定符。任何一个可以帮助我获得写入字符串正确的价值观。而这已在POSIX标准实现。感谢您的输入 无效的主要(){ 无符号_int64 dbFileSize = 99; 无符号_int64档案大小= 100; CHAR BUF [128]; memset的(BUF,0×00,128); ..
发布时间:2016-08-17 22:30:53 C/C++