我在C中写了一个快速矩阵乘法器。它在我的MBA上编译并运行良好。当我在我的学校Linux机器上编译和运行时,我陷入无限循环。
这是我的gcc编译
gcc -Wall prog1.c -o prog1
这是我在MBA上的gcc版本
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build
2336.11.00)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
这是学校服务器上的gcc版本。
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
以下是代码的link。
编辑:抱歉!我在输入验证上得到了无限循环。我一直在使用printf语句来调试我的代码,但即便如此,我仍然很难理解为什么它会卡在那里。发生的是第181行的for()在遇到'+'或' - '后继续循环。
16个命令行参数,因为它填充了两个矩阵,每个矩阵有8个整数。
我不是绝对肯定的,这是不同的编译器或我的代码的问题!我只想到这是因为我在MBA上获得了预期的结果,但在Red Hat机器上却没有。