分段错误 chkstk_ms C++

2024-01-11

我需要有关以下计数排序实现的帮助。是不是因为x的值太大了?我遇到分段错误。 gdb 是这样说的:

Program received signal SIGSEGV, Segmentation fault.
___chkstk_ms () at /usr/src/debug/gcc-5.4.0- 1/libgcc/config/i386/cygwin.S:146
146     /usr/src/debug/gcc-5.4.0-1/libgcc/config/i386/cygwin.S: No such file or directory.

这是代码片段,

void radix_sort::sort_array(int array[], int n)
{
    int arrayB[n];

    auto k = *std::max_element(&array[0], &array[n - 1]);
    auto m = *std::min_element(&array[0], &array[n - 1]);

    long int x = k - m + 1;
    int arrayC[x];

    for (auto i = 0; i < n; i++)
        arrayC[array[i] - m]++;

    for (long int i = 1; i < x; i++)
        arrayC[i] = arrayC[i] + arrayC[i - 1];

    for (auto i = n - 1; i >= 0; i--)
    {
        arrayB[arrayC[array[i] - m] - 1] = array[i];
        arrayC[array[i] - m]--;
    }

    for (int i = 0; i < n; i++)
        array[i] = arrayB[i];
}

In

arrayC[array[i] - m]++;

此时代码中没有以下元素arrayC已被分配,因此未知的数字会增加。这可能会爆炸

arrayB[arrayC[array[i] - m] - 1] = array[i];

几行之后因为arrayC[array[i] - m]可能是负数或几十亿,并且超出我们所知的范围。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分段错误 chkstk_ms C++ 的相关文章

  • 在路由mvc 4中添加公司名称

    我一直在尝试为 Facebook 等用户提供在 URL 中添加公司名称的选项 http localhost 50753 MyCompany Login 我尝试过不同的网址 但没有成功 routes MapRoute name Default
  • 删除是如何工作的? [复制]

    这个问题在这里已经有答案了 可能的重复 C 编程 free 如何知道要释放多少 https stackoverflow com questions 1518711 c programming how does free know how m
  • linq 中使用字符串数组 c# 的 'orderby'

    假设我有一个这样的方法定义 public CustomerOrderData GetCustomerOrderData string CustomerIDs var query from a in db Customer join b in
  • CSharpRepl emacs 集成?

    我碰巧知道莫诺CSharpRepl http www mono project com CsharpRepl 是否有 emacs csharp 模式使用它在一个窗口中运行 REPL 并像 python 模式一样在另一个窗口中编译 运行 C
  • ggplot2 方面的内部排序

    我正在尝试在 ggplot2 中绘制一个方面 但我很难使不同方面的内部顺序正确 数据如下 head THAT EXT ID FILE GENRE NODE 1 CKC 1823 01 CKC Novels better 2 CKC 1824
  • 是否存在指向不同类型的指针具有不同大小的平台?

    C 标准允许指向不同类型的指针具有不同的大小 例如sizeof char sizeof int 是允许的 但是 它确实要求如果将指针转换为void 然后转换回其原始类型 它必须与其原始值进行比较 因此 从逻辑上来说 sizeof void
  • 计算另一个表达式中的 C# 表达式

    我想在另一个表达式中使用一个表达式 Expression
  • 为什么'enable_if'不能用于禁用这里声明

    include
  • 如何使用 NPOI 按地址(A1、A2)获取 Excel 单元格值

    我有一个 Excel 单元格地址 例如 A1 A2 如何使用 C 中的 NPOI 框架以编程方式访问此单元格 我找到的一些 Java POI 示例代码 CellReference cr new CellReference A1 row my
  • 从BackgroundWorker线程更新图像UI属性

    在我正在编写的 WPF 应用程序中 我有一个 TransformedBitmap 属性 该属性绑定到 UI 上的 Image 对象 每当我更改此属性时 图像就会更新 因此显示在屏幕上的图像也会更新 为了防止在检索下一张图像时 UI 冻结或变
  • 使用排序函数按 NSDates 对数组进行排序[重复]

    这个问题在这里已经有答案了 我有一个名为的模型类Event import Foundation import MapKit public class Event let id Int var title String let status
  • 英文日期差异

    接近重复 如何计算相对时间 https stackoverflow com questions 11 how do i calculate relative time 如何在 C 中计算某人的年龄 https stackoverflow c
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • 从浏览器访问本地文件?

    您好 我想从浏览器访问系统的本地文件 由于涉及大量安全检查 是否可以通过某种方式实现这一目标 或使用 ActiveX 或 Java Applet 的任何其他工作环境 请帮帮我 要通过浏览器访问本地文件 您可以使用签名的 Java Apple
  • CUDA 8 编译错误 -std=gnu++11

    我正在尝试转换一些代码以使用 CUDA 并且我认为我遇到了兼容性问题 我们使用CMake 这些是我使用的 gcc 和 CUDA 版本 gcc version gcc Ubuntu 5 4 0 6ubuntu1 16 04 5 5 4 0 2
  • 如何调试 .NET 运行时中的内部错误?

    我正在尝试调试一些处理大文件的工作 代码本身works 但 NET 运行时本身会报告零星错误 对于上下文 这里的处理是一个 1 5GB 文件 仅加载到内存中一次 在循环中处理和释放 故意尝试重现此否则不可预测的错误 我的测试片段基本上是 t
  • 如何得知客户端从服务器的下载速度?

    根据客户的下载速度 我想以低质量或高质量显示视频 任何 Javascript 或 C 解决方案都是可以接受的 Thanks 没有任何办法可以确定 您只能测量向客户端发送数据的速度 如果没有来自客户端的任何类型的输入来表明其获取信息的速度 您
  • 来自 3rd 方库的链接器错误 LNK2019

    我正在将旧的 vc 6 0 应用程序移植到 vs2005 我收到以下链接器错误 我花了几天时间试图找到解决方案 错误LNK2019 无法解析的外部符号 imp 创建AwnService 52 在函数 public int thiscall
  • 如何将 SQL“LIKE”与 LINQ to Entities 结合使用?

    我有一个文本框 允许用户指定搜索字符串 包括通配符 例如 Joh Johnson mit ack on 在使用 LINQ to Entities 之前 我有一个存储过程 该存储过程将该字符串作为参数并执行以下操作 SELECT FROM T
  • 结构化绑定的用例有哪些?

    C 17 标准引入了新的结构化绑定 http en cppreference com w cpp language structured binding功能 最初是proposed http www open std org jtc1 sc

随机推荐

  • 带有 OpenGL 的 Qt MDI 应用程序:如何获取有效的屏幕截图?

    我有一个MDI http en wikipedia org wiki Multiple document interface用 Qt 编写的应用程序 一些子窗口包括QGLWidgets 即 OpenGL 上下文 其中最突出的是使用 Open
  • 如何修复尝试使用 Selenium 查找元素时引发的 TypeError?

    我正在尝试从网页上抓取所有链接 我正在使用 Selenium WebDriver 滚动并单击网页中的 加载更多 按钮 我正在尝试的代码如下所示 from selenium import webdriver from selenium web
  • 使用 Bash 删除文本文件中的列?

    我需要编写一个脚本 从 Finger 的输出中删除 Idle 列 gt finger Login Name TTY Idle Login Time Office Phone Billy Billy Howard con 6 55 Fri 1
  • NavigationView 栏材质在 iOS 15 上不可见

    在 iOS 15 上 一个带有NavigationView with inline模式不再显示您在导航栏上看到的模糊材质颜色 示例代码 struct ContentView View var body some View Navigatio
  • 将 python 包 Egg 存储在 Artifactory 中是个好主意吗?

    目前我正在开发自动化测试框架 该测试框架有不同的包 这些包将在不同的项目中引用 并且可能由开发人员在本地进行修改 我想管理 python 包 Eggs 我正在考虑使用 Artifactory 我试图寻找Python的Artifactory帮
  • iOS8 的 KeychainItemWrapper 崩溃

    我在用着钥匙串项目包装 https developer apple com library ios samplecode GenericKeychain Listings Classes KeychainItemWrapper m html
  • 在Python中查找给定字符串的所有可能排列[重复]

    这个问题在这里已经有答案了 我有一根绳子 我想通过更改该字符串中字符的顺序来生成该字符串的所有排列 例如 说 x stack 我想要的是这样的列表 l stack satck sackt 目前 我正在迭代字符串的列表强制转换 随机选取 2
  • 在 ggplot2 箱线图上添加多个标签

    我正在尝试在此箱形图上为 2 组添加带有男性和女性平均年龄的标签 到目前为止 我只能按小组进行 而不能按性别和小组进行 我的数据框 Age c 60 62 22 24 21 23 Sex c f m f f f m Group c Old
  • 为什么基于TComponent的接口实现会泄漏内存?

    此 Delphi 代码将显示 TMyImplementation 实例的内存泄漏 program LeakTest uses Classes type MyInterface interface end TMyImplementation
  • Python 中的迷你语言

    我正在用 Python 创建一个简单的迷你语言解析器 靠近问题域进行编程等等 不管怎样 我想知道这里的人会如何做这件事 在 Python 中做这种事情的首选方法是什么 我不会给出我所追求的具体细节 因为目前我只是研究整个领域在 Python
  • 代码契约+代码分析

    我考虑开始使用代码合约 http msdn microsoft com en us devlabs dd491992 aspx在我的代码库中 我已经使用代码分析并启用了所有规则并实现了零警告的目标 然而 当使用Contract Requir
  • 模式关闭后无法在页面上滚动

    我有一个更新数据的模式 更新完成后 模式将关闭 之后我无法在页面上滚动 modal div class modal fade div class modal dialog div class modal content div class
  • 如何在Python中编辑列表中的每个成员

    我是 python 新手 我正在尝试创建一个大写函数 该函数可以将字符串中的所有单词大写或仅将第一个单词大写 这是我的功能 def capitalize data applyToAll False depending on applyToA
  • Flask Docker 容器 SocketIO 问题

    我有一个 Flask 应用程序 它使用 SocketIO 从 Postgres live 获取数据 当我在本地运行该应用程序时 该应用程序运行良好 当我使用 docker compose 托管 Flask 应用程序时 问题就出现了 我的 J
  • 猫头鹰旋转木马 2 响应式图像

    这个案例有一些题目 但是尝试了各种方法之后 没有成功 我试图在 owl carousel 2 插件中使图像响应 我使用responsive插件选项中的选项 我可以控制所需分辨率的项目数量 但在某些分辨率图像不适合父级高度 父级是view a
  • 任何时候只能打开一个 ContentDialog

    如果我多次按下登录按钮 则会触发消息 异步操作未正确启动 任何时候只能打开一个 ContentDialog 延迟代表应用程序联系服务器以查看用户是否有效所需的时间 如果我使用 MessageDialog 一切正常 但我想使用 Content
  • 数字总和返回 NaN

    我正在尝试对 div 内的数字求和 所以 我这样做了 document ready function var numbers sumNumbers item each function numbers this children text
  • 将对象列表发布到 MVC 5 控制器

    我想将对象列表发布到 MVC 5 控制器 但只有 NULL 到达控制器方法 这个帖子 ajax type POST dataType json contentType application json url delikte data JS
  • 使用 postgresql 时出现错误“无法写入临时文件块....设备上没有剩余空间...”

    我正在运行一个非常大的查询 在表中插入很多行 近 800 万行划分为一些较小的查询 但在某些时刻出现错误 我收到错误 无法写入块 临时文件的设备上没有剩余空间 使用 postgresql 我不知道每次查询后是否需要删除临时文件以及如何执行此
  • 分段错误 chkstk_ms C++

    我需要有关以下计数排序实现的帮助 是不是因为x的值太大了 我遇到分段错误 gdb 是这样说的 Program received signal SIGSEGV Segmentation fault chkstk ms at usr src d