c - Windows 上的 clang 中缺少 M_PI_2
问题描述
我在源代码中使用了math.h中的 M_PI_2。
这适用于我的 Linux、OSX、iOS 和 Android 版本。
当我为 Windows 使用 clang 编译器时,我得到:
use of undeclared identifier 'M_PI_2'
为什么 Windows 上的 clang 编译器没有 M_PI_2?我编译_POSIX_C_SOURCE=200112L
$ clang --version
clang version 6.0.1 (tags/RELEASE_601/final)
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: C:\Program Files\LLVM\bin
解决方案
所以,从ucrt/corecrt_math_defines.h
我看:
“在包括公开这些宏定义之前定义_USE_MATH_DEFINES ......”
推荐阅读
- swift - NSSplitViewController,想要在全屏时通过移动鼠标来禁用打开侧边栏的行为
- python - 图像显示在鼠标问题 Pygame 如何修复?
- javascript - 如何验证反应选择
- ios - 如果用户已授予麦克风访问权限,则无法通过蓝牙收听 iOS 应用程序
- javascript - 如何将网页表单中的输入发送到不同网站的搜索栏?
- excel - 使用 VBA 抓取带有登录页面的网站
- java - Java 内存优化 [Key:Long, Value:Long] 存储非常大(500M),用于并发读取访问
- python - 如何重写存储在 .mtx 文件中的节点 ID
- android - MLKit 是否可以检测物体的 3D 尺寸?
- angular - FlexLayoutModule 不适用于 Angular 11