有人最近问我,看看下面的代码有什么问题,我该如何解决?
scalar Point
type Point {
x: Float
y: Float
}
之前我从未做过类似的事情,所以我尝试在IDE中运行它,我看到return语句给出了分段错误,但我不知道如何解释它以及是否有更多错误。
答案 0 :(得分:4)
问题出在count(*) * 100.0 / NULLIF(SUM(DATEDIFF(hour, ce.STARTTIME, ce.ENDTIME)), 0) AS [Face to Face Ratio]
循环条件中。
您的while
是0x00000080。任何与0x80 AND的值都不会等于1,因为它的LSB为0.任何与0的AND值始终为0.
您必须将条件修改为
BUSY_BIT_MASK
因此,当设置标志时,它将与0x80进行AND运算,输出将为0x80。 (1和1 = 1)
您正在收到SegFault,因为您考虑的地址在您的计算机上无效。你必须采取有效的地址。您正在尝试访问可能不存在的随机内存或内存地址 - 这是SegFault的原因。