为什么 clang 说 _Imaginary_I 没有声明?

2024-06-30

Running

clang test.c -o test

在这个文件上

#include <stdio.h>
#include <complex.h>

int main()
{
    _Complex double z = 1.0 + _Imaginary_I * 2.0;
    return 0;
}

无法编译,因为

error: use of undeclared identifier '_Imaginary_I'.

根据在线酒吧 http://pubs.opengroup.org/onlinepubs/009695399/basedefs/complex.h.html, _Imaginary_I被定义为。发生了什么?


虚数,以及_Imaginary_I,是 C 标准中的可选功能。

从 C11 开始,复数也是一个可选功能,但通常得到实现的支持。I and _Complex_I应该有效。


根据该标准,您应该能够通过检查以下宏的值来在编译时测试一致性:

  • __STDC_IEC_559_COMPLEX__: value 1表示复数和虚数类型存在并且符合 IEC 60559。
  • __STDC_NO_COMPLEX__: value 1意味着复杂类型和虚类型都不存在。

但实际上这并不可靠,例如gcc 定义了宏但不支持该功能 https://sourceware.org/bugzilla/show_bug.cgi?id=15720.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 clang 说 _Imaginary_I 没有声明? 的相关文章

  • 如何在Azure函数应用程序中调用函数后动态更改内容

    我正在使用 Visual Studio 2019 使用 Azure function v3 0 开发 Azure function 应用程序 我实现了一个时间触发的功能 我想更改内容 时间表 function json function j
  • 同一个盒子上的进程间通信 - 2 个应用程序或进程之间的通信

    在同一机器上的应用程序之间实现进程间通信的最佳方法是什么 两者都是用 C 编写的 管理器应用程序将向其他应用程序发送命令 例如 停止 启动 它还将监视应用程序并可能要求提供数据 所有应用程序都将在同一台运行 Windows 7 操作系统的计
  • 使用脚本取消设置 PDF 字体

    我正在使用 xhtml2pdf 库自动创建 PDF 几个月前我有过这个问题 https stackoverflow com questions 25203219 xhtml2pdf doesnt embed helvetica 库嵌入了我没
  • 为什么将静态类内初始化成员传递给采用 const 引用的函数需要该成员有定义?

    这是基于最初提出的问题here https stackoverflow com questions 14547370 confusion about in class initialization of static data member
  • C# 泛型方法,new() 构造函数约束中的类型参数

    有没有办法创建一个使用的通用方法new 要求类具有特定类型的构造函数属性的约束 例如 我有以下代码 public T MyGenericMethod
  • ListView 内的 TextBox 绑定到对象,双向绑定不起作用

    Edit 好吧 在尝试了无数次但没有成功之后 我创建了一个非常小的 Wpf 应用程序 您可以直接复制此代码 请注意 当您更改文本框中的值并按 测试 按钮时 这些值永远不会更新 我不明白为什么双向绑定不起作用 请帮忙 这是 xaml
  • 选择数据结构

    根据需求使用不同的数据结构 但我如何知道应该使用哪种数据结构 我只是想知道如何选择合适的数据结构 谢谢 此流程图适用于 C 中的 STL 但您可以用 C 实现 STL 容器支持的任何数据结构 列表是一个链接列表 Vector是一个动态数组
  • 为什么禁止在后续私有派生类中简单提及基指针/引用?

    struct B struct D private B B fun return new D ok struct DD public D B foo return 0 error struct B B B is inaccessible 这
  • ASP.NET Core处理JSON反序列化问题

    我想更改 ASP NET Core 中无效 JSON 请求处理的默认行为 我有这个模型 public class Model public Guid Id get set 当我用这个 body 发送这个请求时 Id null 它返回此错误消
  • C++ 相当于 fscanf()?

    请不要说它是 fscanf P 我正在尝试替换这一行 if fscanf fp P c n ch 1 如果我理解正确的话 它会尝试读取 char 并将其存储到 ch 前提是它位于 P 和 n 之间 是对的吗 如果成功 它会返回1 它读取的字
  • 如何使用OpenCV的归一化相关性?

    如何使用 OpenCV 的归一化相关性 有人可以提供代码示例吗 我的问题 我有一个螺丝头图像 需要找到螺丝的中心 所以我正在考虑使用 OpenCV 相关性 这是一个好主意吗 您可以在下面的链接下找到示例图像 http imageshack
  • 复制空对象是否涉及访问它

    灵感来自this https stackoverflow com a 48273386 4832499问题 struct E E e E f e Accesses e To access https timsong cpp github i
  • WPF PasswordBox 中的密码不可绑定的安全优势?

    我只是偶然发现一个事实PasswordWPF 的属性PasswordBoxes 不可绑定安全原因 这使得在 MVVM 上下文中使用它们相当麻烦 答案如https stackoverflow com a 1493330 3198247 htt
  • “constexpr”有什么用?

    我实在是找不到它有什么用处 我的第一个想法是我可以用它来实现 按合同设计 而不使用如下宏 struct S S constexpr int i S i static assert i lt 9 i must be lt 9 S int i
  • 单元测试依赖注入

    我在用Autofac for IoC 这是我的容器启动器类 其职责是注册依赖项 public class ContainerInit public static IContainer BuildContainer var conFac ne
  • 如何在类型依赖于派生类的基模板类中声明成员?

    给定一个使用 CRTP 的基类 我正在考虑在基模板类中声明一个成员 其中类型依赖于派生类 虽然以下内容按预期工作 template
  • 在 C++ 中调用函数有多少开销?

    许多文献都谈到使用内联函数来 避免函数调用的开销 但我还没有看到可量化的数据 函数调用的实际开销是多少 即通过内联函数我们可以实现什么样的性能提升 在大多数架构上 成本包括将所有 或部分 或没有 寄存器保存到堆栈 将函数参数推送到堆栈 或将
  • 如何在预处理器中检测X32 ABI或环境?

    X32是一个 ABIamd64 x86 64使用 32 位指针的 CPU 这个想法是将 x86 64 的较大寄存器集与 32 位指针产生的较小内存和缓存占用空间结合起来 它可提供高达约 40 的加速 看x86 x32 和 x64 架构之间的
  • 将 HTML 渲染为图像

    我正在基于动态输入和裁剪图像生成优惠券 并且现在使用 ntml 和 css 显示优惠券 问题是 打印这已成为一个问题 因为打印时背景如何消失以及其他问题 所以我认为最好的解决方案是能够基于html生成图像 或者设置某种接受字符串和图像的模板
  • C# 替换 Byte[] 中的字节

    替换字节数组中的某些字节的最佳方法是什么 例如我有bytesFromServer listener Receive ref groupEP 我可以做BitConverter ToString bytesFromServer 将其转换为可读格

随机推荐