国际访客建议访问 Primers 编程伙伴 国际版站点 > C 教程 > imaxabs 以获得更好的体验。

# C 语言标准库函数 imaxabs

在头文件 inttypes.h 中定义。
/*********************************************
 * @brief 求绝对值
 * @param n 要计数绝对值的整数
 * @return 绝对值
 ********************************************/
intmax_t imaxabs(intmax_t n);

!subtitle:说明

计算 intmax_t 类型整数的绝对值。

注意,intmax_t 可以表示的负数范围比正数范围大,无法计算 INTMAX_MIN 的绝对值。

!subtitle:参数

  • n - 要计算绝对值的整数

!subtitle:返回值

参数 n 的绝对值。

# 示例

#include <stdio.h>
#include <inttypes.h>

int main(void)
{
    printf("%" PRIiMAX "\n", imaxabs(0));       // 0 的绝对值
    printf("%" PRIiMAX "\n", imaxabs(233));     // 正数的绝对值
    printf("%" PRIiMAX "\n", imaxabs(-10086));  // 负数的绝对值
    
    return 0;
}

运行结果:

0
233
10086

# 推荐阅读

# 参考标准

  • C23 standard (ISO/IEC 9899:2024):

    • 7.8.2.1 The imaxabs function (p: TBD)

    • 7.22.6.1 The abs, labs and llabs functions (p: TBD)

  • C17 standard (ISO/IEC 9899:2018):

    • 7.8.2.1 The imaxabs function (p: 159)

    • 7.22.6.1 The abs, labs and llabs functions (p: 259)

  • C11 standard (ISO/IEC 9899:2011):

    • 7.8.2.1 The imaxabs function (p: 218)

    • 7.22.6.1 The abs, labs and llabs functions (p: 356)

  • C99 standard (ISO/IEC 9899:1999):

    • 7.8.2.1 The imaxabs function (p: 199-200)

    • 7.20.6.1 The abs, labs and llabs functions (p: 320)

本文 更新于: 2025-11-27 09:38:08 创建于: 2025-11-27 09:38:08