首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NaN在用icpx编译时被报告为0,而不是NaN

NaN在用icpx编译时被报告为0,而不是NaN
EN

Stack Overflow用户
提问于 2022-11-11 10:33:09
回答 1查看 47关注 0票数 0

在运行此程序时,在输出Nan中报告为0,当使用icpx V2022.1构建时,它与其他编译器一起工作得很好。

代码语言:javascript
复制
Compiling with the command:  icpx -O3 -qmkl=sequential

代码语言:javascript
复制
#define ARMA_DONT_USE_WRAPPER

#include <armadillo>

int main() {
  
  arma::Col<double> var;

  var.randu(4);
  var.print();
  
  std::cout << std::endl;
  
  var[0] = arma::datum::nan; 
  // Same with var[0] = std::numeric_limits<double>::quiet_NaN()
  var.print();
  
  return 0;
}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-14 07:28:39

英特尔编译器的默认优化设置是-O2。正如Peter在上面的注释中所建议的,您可以使用“-fp=精确”标志来指示编译器在实现浮点计算时严格遵循值安全优化。希望这能解决问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74401205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档