c - abs() 在 Xcode 上不起作用?

标签 c xcode

我从标准库abs() 中得到的值不正确。 在下面的示例中,最小值和最大值被正确评估为 -18635 和 3402,但 absMax 的结果为 3402,所以它应该是 18635。这应该有效,还是我犯了一个错误?

double    NormalizeWaveData(SInt16 *inData, long inlength)
{
    int maxAmp = 0, minAmp=0, absMax=0;
    for(long i=0; i<inlength; i++)
    {
        if( inData[i] > maxAmp)
           maxAmp = inData[i];
        if( inData[i] < minAmp)
           minAmp = inData[i];

        if( abs(inData[i]) > absMax)
           absMax = inData[i];

    }
...

最佳答案

您需要使用

if( abs(inData[i]) > absMax)
       absMax = abs(inData[i]);

关于c - abs() 在 Xcode 上不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15110327/

相关文章:

ios - 如何在 XCode 中使用 image.xcassets?

ios - 在没有 Storyboard的情况下创建和执行 segue

c - 通过知道线程名称来设置线程的优先级

c - 如何测量计算时间

c - LoadLibrary 不重用已加载的库

c - linux 内核函数 page_address()

iphone - 尝试在 View 之间切换时会看到白屏!

c - getcwd 是否有任何替代 API 来获取进程的工作目录

ios - 如何根据 ios 中的设备宽度换行到下一行

c++ - 是否可以更改 Xcode 缩进注释行的方式?