gpt4 book ai didi

c - 基本数据类型的位数

转载 作者:太空宇宙 更新时间:2023-11-04 00:50:47 25 4
gpt4 key购买 nike

这里有一些想法。我正在学习,所以可能会有错误,甚至会遗漏一些基础知识。

  1. sizeof 运算符返回字节数。
  2. byte 中的位数 不是常数值(纠正我,但它是 char 的位数)。
  3. 我想知道变量占用多少位,如果不对 char 中的位数做出假设,sizeof 不会告诉我这个。

所以我想出了这段(可能是不必要的)代码:

#include <stdio.h>
#include <math.h>
#include <limits.h>

int main(void)
{
double bits;

bits=sizeof(int)*log10(UCHAR_MAX+1)/log10(2);

printf("Bits = %lf\n", bits);

return 0;
}

是否有更简单(标准)的方法来检查给定类型占用了多少
CHAR_BIT * sizeof(type) 可以完成这项工作,但是是否有标准的 one argument 宏/函数可以为我完成这项工作?
具有更好数学背景的人可以检查我的代码是否总是给出正确答案。

最佳答案

const size_t numberOfBits = CHAR_BIT * sizeof(type);

关于c - 基本数据类型的位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19244371/

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