gpt4 book ai didi

c - 如何将字母 ULL 附加到您在 C 中不知道的数字

转载 作者:太空宇宙 更新时间:2023-11-04 06:55:26 26 4
gpt4 key购买 nike

我有以下代码:

#include <stdio.h>
#include <stdint.h>
#define APPEND(x, y) x ## y
#define ULL(x) APPEND(x, ull)

int main (void)
{
unsigned long long int a = ULL(12345678901234567890);
printf("val: 0x%llx\n", a);
return 0;
}

它返回注册表 qword 12345678901234567890 的十六进制值。

我该如何更改它,因为它可以是任何数字而不是特定数字。


[根据 OP 删除的“答案”更新]

我改变了吗

unsigned long long int a = ULL(12345678901234567890); 

unsigned long long int a = (unsigned long long)

其中 x = 12345678901234567890

抱歉在这里听起来很愚蠢......但是 x 的值可以是任何东西。

最佳答案

正如@Felix Palmen 所说,ULL 用于指定整数文字。


假设函数返回那么大的数字,你会这样做

unsigned long long int a = (unsigned long long) function_which_return_big_number();

但要允许此函数返回这么大的数字,它已经必须是 unsigned long long


最后一个用例可能是这些大数字可能是字符串,那么您将使用 strtoull .

关于c - 如何将字母 ULL 附加到您在 C 中不知道的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45649960/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com