Tag: merge

C:合并 – 对具有不均匀元素数的数组进行排序

我一直在为我的程序编程类工作,我们提供了一个不能完全运行的合并排序程序。 它对具有偶数个整数的数组执行合并排序,但会抛出具有奇数个整数的分段错误。 我理解排序是如何工作的,并且因为奇数导致分段错误而导致分段错误,因为数组以某种方式被过度填充。 我也理解该解决方案将涉及测试原始数组是偶数还是奇数,然后根据这个不同地将值传递给合并函数。 尽管我对这个项目有所了解,但是我几个星期以来一直试图让这个项目正常运行,我希望有人可以给我一些建议。 在发布之前我已经做了很多寻找答案,但所有其他的例子都涉及到结构的合并排序程序,这超出了我迄今为止学到的内容。 您将在我在下面发布的代码中看到。 此外,完整的程序涉及一些其他文件,但我只包括mergesort.c文件和merge.c文件,正如我的教授所保证的那样,这是唯一需要进行任何更改的地方。 main文件工作正常,只负责填充数组并调用mergesort函数。 如果其他文件是必要的,请告诉我,我会发布它们。 我没有的唯一原因是因为我们使用的是Linux shell,而且我还没有找到一种将shell中的代码复制并粘贴到我自己的操作系统的实用方法,并且需要一段时间才能将其写出来。 提前感谢您提供的任何指示。 这是代码。 mergesort.c #include void mergesort(int key[], int n) //key is the array, n is the size of key { int j, k, m, *w; w = calloc(n, sizeof(int)); assert(w != NULL); for (k = 1; k < n; k *= 2) { […]

如何将两个windows vc静态库合并为一个

我有一个两个静态库a.lib和b.lib (C语言),它是使用VC6(Visual Studio 6.0)生成的。 我想将这两个lib合并到一个静态lib c.lib 。 如何在CLI模式下执行此操作? 我已经看到了* nix静态库的合并 。 我想在CLI模式下使用VC6静态库做同样的事情。