小编ezi*_*zig的帖子

C程序在OSX和Windows上给出不同的结果

我在C中写了一个递归函数来反转一个整数(123 - > 321),当我在我的Mac上运行它时工作正常,但是当我的教练在运行Windows的计算机上运行它时表现得很奇怪.

int rev(int num)
{
    int base;

    if (num < 10) return (num); 

    base = pow(10,(int)log10(num));
    return(rev(num/10)+num%10*base);
}
Run Code Online (Sandbox Code Playgroud)

例如,在OSX上调用rev(8765)返回5678,在Windows上,rev(8765)返回5672.我无法访问Windows机器以尝试在调试模式下运行程序,所以我一直在很难想到问题是什么.我非常感谢任何见解!

环境:

我使用的是OSX 10.8和GCC 4.2.我很确定我的导师正在使用MinGW作为她的编译器.

c compiler-construction macos

4
推荐指数
1
解决办法
113
查看次数

标签 统计

c ×1

compiler-construction ×1

macos ×1