碰到一个诡异的问题
今天碰到一个bug,百般排查之后发现是exp函数的结果不对。检查后原因是没有包含<math.h>,包含后结果就正确了。
但问题在于,没有包含math.h的情况下,为什么编译能通过呢?而且没找到项目中有任何名为exp的函数或宏定义!
为了验证这个问题,我又新建了一个.c文件,
int test()
{
float a=exp(0);
float b=exp(1);
return 0;
}
没有包含任何头文件,编译竟然能过!然后a,b的值都是错的。
有人知道这是什么问题吗?
编译环境是vs2008.
但问题在于,没有包含math.h的情况下,为什么编译能通过呢?而且没找到项目中有任何名为exp的函数或宏定义!
为了验证这个问题,我又新建了一个.c文件,
int test()
{
float a=exp(0);
float b=exp(1);
return 0;
}
没有包含任何头文件,编译竟然能过!然后a,b的值都是错的。
有人知道这是什么问题吗?
编译环境是vs2008.
...全文
相关推荐
解决layui使用layui-icon出现默认图标的问题
最近在学习使用layui的时候碰到了一个巨诡异的问题,使用layui-icon时出现了默认图标问题,先上图:后台代码:正常情况下应该在箭头指示处有一段unicode编码才会显示图标,百度了很久发现没人
浅谈SpringMVC HandlerInterceptor诡异问题排查
一、问题发现在进行压测时,发现有一些接口时好时坏,即使是同一个用户,在不同的请求中也可能得到不同的结果。
【高并发】一文解密诡异并发问题的第一个幕后黑手——可见性问题
"高并发、CPU缓存、变量、可见性、并发、线程、缓存"在并发编程中,尤其是在多线程环境下,一个重要的挑战是确保数据的正确同步和可见性。可见性问题通常是由CPU缓存机制引起的,它是并发编程中诡异问题
通过V8源码看一个关于JS数组排序的诡异问题
本文通过分析V8引擎的源码,探讨了一个关于JS数组排序的诡异问题。
java程序中处理一个包含诡异的不可见的字符。
在提供的`TestT.java`文件中,很可能是包含了一个测试案例,用来演示如何检测和处理这类诡异的不可见字符。通过分析`TestT.java`的代码,我们可以学习如何在实际项目中避免和解决此类问题。


