代码之家  ›  专栏  ›  技术社区  ›  snakile

内部函数,不能定义(c)

  •  3
  • snakile  · 技术社区  · 14 年前

    我实现了一个名为abs()的函数。我得到这个错误:

    无法定义内部函数

    我做错了什么? 我正在使用Visual Studio 2005。

    4 回复  |  直到 14 年前
        1
  •  3
  •   mctylr    14 年前

    无法定义内部函数

    在这种情况下, intrinsic 意味着编译器 已经 具有调用的函数的实现 abs 以及您无法重新定义的。

    解决方案?变化 你的 函数的其他名称, snakile_abs 例如。

    查看有关 abs 函数以获取更多信息。

        2
  •  2
  •   Artefacto    14 年前

    问题不在标题中。

    问题是,不能定义内部函数,即编译器识别和实现自己的函数,通常使用的是不能单独在C代码中使用的优化。

        3
  •  0
  •   Loki Astari    14 年前

    所有数学函数的名称(参见math.h)

    前缀为“f”或“l”的所有数学函数的名称。

    是为实现而保留的。

        4
  •  0
  •   R.. GitHub STOP HELPING ICE    14 年前

    定义 static int abs(int x) { ... } 应该是合法的,但很简单 int abs(int x) { ... } 具有未定义的行为,因此编译可以做的一件合理的事情是发出错误。