C intmax能容纳大小吗?

C intmax能容纳大小吗?,c,printf,size-type,C,Printf,Size Type,intmax可以容纳大小\u t最大十进制数吗? printf中哪个大小类型具有最大优先级uintmax\u t/intmax\u t或size\u t(例如,如果我写printf(“%zjd”,x)) 否,因为size\u t是无符号的,有可能丢失一位 我认为您不了解printf()的工作原理,您可以使用“可选长度修饰符”,但不能超过一个 否,因为size\u t是无符号的,有可能丢失一位 我认为您不了解printf()的工作原理,您可以使用“可选长度修饰符”,但不能超过一个 最有可能不会 两

intmax可以容纳大小\u t最大十进制数吗? printf中哪个大小类型具有最大优先级uintmax\u t/intmax\u t或size\u t(例如,如果我写printf(“%zjd”,x))

  • 否,因为
    size\u t
    是无符号的,有可能丢失一位
  • 我认为您不了解
    printf()
    的工作原理,您可以使用“可选长度修饰符”,但不能超过一个
  • 否,因为
    size\u t
    是无符号的,有可能丢失一位
  • 我认为您不了解
    printf()
    的工作原理,您可以使用“可选长度修饰符”,但不能超过一个

  • 最有可能不会

    两者都是特定于实现的,因此不可能真正回答

    size\u t
    通常是一个无符号整数,它包含给定CPU上寄存器中可能容纳的最大位数。虽然这在现实中并不能完全保证,但我仍然没有找到一个不符合这一点的例子


    intmax\u t
    是一个有符号整数,这意味着它可能具有存储
    size\u t
    可以保存的任何值所需的位,但大值并不意味着相同;
    size\u t
    所能容纳的最大值在解释为
    intmax\u t
    时很可能是一个负整数

    两者都是特定于实现的,因此不可能真正回答

    size\u t
    通常是一个无符号整数,它包含给定CPU上寄存器中可能容纳的最大位数。虽然这在现实中并不能完全保证,但我仍然没有找到一个不符合这一点的例子


    intmax\u t
    是一个有符号整数,这意味着它可能具有存储
    size\u t
    可以保存的任何值所需的位,但大值并不意味着相同;
    size\u t
    所能容纳的最大值,在解释为
    intmax\u t

    时,很可能是一个负整数。您所说的“优先级”是什么意思?优先级是指“处理”大小类型的优先级。我怀疑
    %zjd
    会导致未定义的行为。为什么要编写
    %zjd
    printf
    中?即使它被允许,这也是一个矛盾,毫无意义。“intmax能保存最大十进制数吗?”如果
    intmax\u MAX
    =
    size\u MAX
    在很多实现中可能不是这样。你说的“优先级”是什么意思?优先级我指的是“处理的优先级”尺寸类型规格我怀疑
    %zjd
    会导致未定义的行为。为什么要在
    printf
    中写入
    %zjd
    ?即使它被允许,这也是一个矛盾,毫无意义。“intmax\u t可以保存大小\u t最大十进制数吗?”如果
    intmax\u MAX
    =
    size\u MAX
    ,在很多实现中可能都不是这样。我知道,我正在尝试编写printf函数的副本,我看到stdio.h-printf有一个“大小优先级处理”如果字符串有多个大小类型mod。那么
    uintmax\t
    呢?我知道,我正在尝试编写printf函数的副本,我发现stdio.h-printf有一个“大小优先级处理”,如果字符串有多个大小类型mod。那么
    uintmax\t
    呢?