我编码的一个简单函数发生分段错误错误[关闭]

2023-12-01

这里我只想定义一个返回矩阵乘法的函数,其中N任意,我想生成一个矩阵new命令。当我执行该函数时,出现错误:

Segmentation fault (core dumped)

每当我赋值给C我遇到了这个错误,有人可以告诉我发生了什么以及如何解决它吗?

int **multiply(int **A, int **B, int N){
    int **C = new int*[N];
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            for (int k = 0; k < N; k++)
                C[i][j] = C[i][j] + A[i][k] * B[k][j];
        }
    }
    return (C);
}

将矩阵作为指针的指针并不是一个好主意。为了正确地做到这一点,你需要一个相当复杂的:

int **C = new int*[N];
for(int i = 0; i < N; ++ i)
    C[i] = new int[M];

释放它也是一个同样复杂的过程。还要考虑一下如果其中之一会发生什么operator new失败并且您想要释放部分分配的矩阵。

将二维数组存储在一维数组中是一种约定。你可以做:

int *C = new int[M * N];

然后元素的访问方式如下:

C_ij = C[i + N * j];

or as:

C_ij = C[j + M * i];

Where i is in [0, N)间隔和j is in [0 to M)间隔。这些实际上与编译器生成对恒定大小的二维数组的访问的方式非常相似(因此乘法实际上成本并不太高,并且在考虑缓存时,整个过程可能比数组的数组快得多)。上面两行之间的区别在于,一行是列优先(当展开到一维时,列的元素是连续的项)或交替行优先。这是一个约定俗成的问题。默认的“C”数组将以行优先。一些库,例如 OpenGL 或 Eigen 使用列专业。

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

我编码的一个简单函数发生分段错误错误[关闭] 的相关文章

  • 我如何才能等待多个事情

    我正在使用 C 11 和 stl 线程编写一个线程安全队列 WaitAndPop 方法当前如下所示 我希望能够将一些内容传递给 WaitAndPop 来指示调用线程是否已被要求停止 如果 WaitAndPop 等待并返回队列的元素 则应返回
  • 以文化中立的方式将字符串拆分为单词

    我提出了下面的方法 旨在将可变长度的文本拆分为单词数组 以进行进一步的全文索引处理 删除停止词 然后进行词干分析 结果似乎不错 但我想听听关于这种实现对于不同语言的文本的可靠性的意见 您会建议使用正则表达式来代替吗 请注意 我选择不使用 S
  • Web 客户端和 Expect100Continue

    使用 WebClient C NET 时设置 Expect100Continue 的最佳方法是什么 我有下面的代码 我仍然在标题中看到 100 continue 愚蠢的 apache 仍然抱怨 505 错误 string url http
  • 动态加载程序集的应用程序配置

    我正在尝试将模块动态加载到我的应用程序中 但我想为每个模块指定单独的 app config 文件 假设我的主应用程序有以下 app config 设置
  • 按成员序列化

    我已经实现了template
  • 秒表有最长运行时间吗?

    多久可以Stopwatch在 NET 中运行 如果达到该限制 它会回绕到负数还是从 0 重新开始 Stopwatch Elapsed返回一个TimeSpan From MSDN https learn microsoft com en us
  • 不支持将数据直接绑定到存储查询(DbSet、DbQuery、DbSqlQuery)

    正在编码视觉工作室2012并使用实体模型作为我的数据层 但是 当页面尝试加载时 上面提到的标题 我使用 Linq 语句的下拉控件往往会引发未处理的异常 下面是我的代码 using AdventureWorksEntities dw new
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • OleDbDataAdapter 未填充所有行

    嘿 我正在使用 DataAdapter 读取 Excel 文件并用该数据填充数据表 这是我的查询和连接字符串 private string Query SELECT FROM Sheet1 private string ConnectStr
  • 如何从 appsettings.json 文件中的对象数组读取值

    我的 appsettings json 文件 StudentBirthdays Anne 01 11 2000 Peter 29 07 2001 Jane 15 10 2001 John Not Mentioned 我有一个单独的配置类 p
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • 将 VSIX 功能添加到 C# 类库

    我有一个现有的单文件生成器 位于 C 类库中 如何将 VSIX 项目级功能添加到此项目 最终目标是编译我的类库项目并获得 VSIX 我实际上是在回答我自己的问题 这与Visual Studio 2017 中的单文件生成器更改 https s
  • 在 ASP.NET 5 中使用 DI 调用构造函数时解决依赖关系

    Web 上似乎充斥着如何在 ASP NET 5 中使用 DI 的示例 但没有一个示例显示如何调用构造函数并解决依赖关系 以下只是众多案例之一 http social technet microsoft com wiki contents a
  • 重载<<的返回值

    include
  • SolrNet连接说明

    为什么 SolrNet 连接的容器保持静态 这是一个非常大的错误 因为当我们在应用程序中向应用程序发送异步请求时 SolrNet 会表现异常 在 SolrNet 中如何避免这个问题 class P static void M string
  • 如何使用 C# / .Net 将文件列表从 AWS S3 下载到我的设备?

    我希望下载存储在 S3 中的多个图像 但目前如果我只能下载一个就足够了 我有对象路径的信息 当我运行以下代码时 出现此错误 遇到错误 消息 读取对象时 访问被拒绝 我首先做一个亚马逊S3客户端基于我的密钥和访问配置的对象连接到服务器 然后创
  • 如何将带有 IP 地址的连接字符串放入 web.config 文件中?

    我们当前在 web config 文件中使用以下连接字符串 add name DBConnectionString connectionString Data Source ourServer Initial Catalog ourDB P
  • 测试用例执行完成后,无论是否通过,如何将测试用例结果保存在变量中?

    我正在使用 NUNIT 在 Visual Studio 中使用 Selenium WebDriver 测试用例的代码是 我想在执行测试用例后立即在变量中记录测试用例通过或失败的情况 我怎样才能实现这一点 NUnit 假设您使用 NUnit
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new

随机推荐

  • 如何在flutter图表中显示json数据

    我对 flutter 还很陌生 我一直在尝试在条形图中显示来自 http 请求的一些数据 我找不到任何这方面的例子 我希望你们中的一些人能够提供帮助 我想用这个Chart来自在线画廊 我刚刚更改了我的应用程序的类名称 import pack
  • Sitecore 站点/项目发布在初始化时挂起

    我们的核心数据库出现问题 该数据库已由前一天的备份数据库恢复 之后 该网站工作正常 但我们在发布任何更改时遇到问题 一旦点击发布按钮 发布正在初始化 消息就会持续很长时间 截至 发布开始 结束 的事件日志中也未捕获到这一点 因此 当我们尝试
  • 如何重新启用 event.preventDefault?

    我有一个网页 已阻止所有提交按钮上的默认操作 但是我想重新启用按钮上的默认提交操作 我该如何执行此操作 我目前正在使用以下方法阻止默认操作 form bind submit function e e preventDefault 我已经使用
  • Android SwitchCompat风格

    我在我的新设备上使用 Android 5 1 1 测试了我的应用程序 在我的 SettingsActivity 中我有一个开关 我已经阅读了一些帖子并将其更改为android support v7 widget SwitchCompat但问
  • C中父进程向子进程发送信号

    我的子进程无法开始工作 我需要传递信号并执行readUsual功能 这是一小段代码 int main pid t pid2 fork if pid2 lt 0 printf Can t create child process n else
  • Julia 变量范围

    我试图在 while 循环中使用一些全局变量 m n r 但 Julia 1 0 0 告诉我这些变量未定义 该代码适用于 julia 0 7 0 但有一些警告 这是我正在使用的代码 是的 写得不好 我希望这不是问题 我删除了一个printl
  • Zend 框架和 Wordpress 集成

    这是我的问题 我有 require once application bootstrap php 在我的 zf 网站根文件夹中的 index php 中 我将 WordPress 博客放入 public html blog 中 我需要将 W
  • 在 Java Applet 中单击后 JButton“保持按下状态”

    我的 Java Applet 中有一个 JButton 按下按钮后 ActionListener 必须执行大量操作 因此 正因为如此 当用户单击按钮时 它会 保持按下 一段时间 有时甚至 5 分钟 而不是立即禁用自身 它会在这 5 分钟后自
  • 谷歌云存储访问的公共URL被拒绝

    我有这个 URL 但访问被拒绝 需要任何权限 https storage googleapis com BUCKET Artboard 4 png 出现此错误 匿名调用者没有 storage objects get 访问 Google Cl
  • 从所有子集中恢复原始数组

    给定一个数组的所有子集和 然后 您应该从提供的子集和中恢复原始数组 原始数组中的每个元素都保证为非负且小于 10 5 原始数组中的元素不超过 20 个 原数组也已排序 保证输入有效 实施例1 如果提供的子集总和是这样的 0 1 5 6 6
  • Microsoft CryptoAPI:如何将 PUBLICKEYBLOB 转换为 DER/PEM?

    我有一个生成的 RSA 密钥对 存储为 PRIVATEKEYBLOB 和 PUBLICKEYBLOB 并且我需要能够将这些密钥转换为 DER 或 PEM 格式 以便我可以在 PHP 或 Python 中使用它 我发现我可以使用 CryptE
  • Pymongo forEach 格式化

    如何格式化 forEach 函数 使其可以驻留在多行上而不会导致语法错误 就像是 self request db myCollection find forEach function u u forSong self request db
  • 带 + 和 - 的 WPF 扩展器按钮样式

    样式专家 我需要帮助设计一种类似于 Visual Studio 代码编辑器中的 Expander 样式 到目前为止 我已经想出了这个
  • 我的 Visual Studio 2012 中的行号旁边出现了彩色条

    今天 当我在工作中启动 Visual Studio 2012 时 我发现了一些新的彩色条 我们通过 RDP 在共享远程服务器上工作 所以我四处询问是否有人安装或更新了任何东西 似乎没有人做过 任何事 我看到的酒吧有 我知道最左边的条 绿色和
  • 将 python 中的单个有序列表转换为字典

    我似乎无法找到一种优雅的方式来开始t并导致s gt gt gt t a 2 b 3 c 4 magic gt gt gt print s a 2 c 4 b 3 我想出的解决方案似乎不太优雅 s dict for i in xrange 0
  • 无法从前端解析 docker compose 服务名称

    您好 我是使用 docker 进行开发的新手 我试图在这里从前端 react 到后端 express js 进行通信 我也启用了 cors 但收到错误消息net ERR NAME NOT RESOLVED当尝试使用 url 从后端获取时ht
  • java.net.BindException:无法分配请求的地址

    我想在我的应用程序中使用低端口 Spring web Tomcat7 上的 SNMP 陷阱接收器 正如我在这个线程中所说的Ubuntu服务器上Java程序绑定低端口 之前 我收到错误 Permission Denied 然后我将tomcat
  • 如何在不按uiimagepickercontroller上的拍照按钮的情况下自动拍照?

    在我的项目中 我需要每隔一分钟自动拍照一次 但我找不到任何解决方案 这是我实现的代码 但它不起作用 我使用 NSTimer 调用相机每 4 秒拍照一次 我只需要拍照 This method is all for the time setup
  • Oracle 中的并发性比 SQL Server 更好吗?

    Oracle 数据库是否能够比 MS SQL Server 数据库实现更好的并发性 特别是在 OLTP 场景中 例如 ERP 系统 我无意中听到一位 SAP 顾问提出了这样的说法 他提到了 Oracle 锁定技术 例如行锁定和多版本读取一致
  • 我编码的一个简单函数发生分段错误错误[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 目前不接受答案 这里我只想定义一个返回矩阵乘法的函数 其中N任意 我想生成一个矩阵new命令 当我执行该函数时 出现错误 Segmentation fault core dumped 每当我