runtime-error 相关问题

在程序执行之后或期间检测到运行时错误。

Range类的复制方法失败

我正在尝试将一张工作表(用户输入的)的全部内容复制到另一张工作表(隐藏但不受保护)。当我运行它时,出现错误:运行时错误'1004':复制方法...

回答 1 投票 0

导致此 C 运行时错误的原因是导致数组中间出现垃圾数字

我是一名初级 C 开发人员,在我的 C 程序中遇到一个奇怪的错误后,我完全被难住了。 这是我遇到问题的代码: #包括 #包括 我是一名初级 C 开发人员,在我的 C 程序中遇到一个奇怪的错误后,我完全被难住了。 这是我遇到问题的代码: #include <stdio.h> #include <stdlib.h> #include <time.h> void resize(int *array, int newsize) { int old_size = sizeof(*array); int *temp = malloc(old_size); if (temp == NULL) { printf("Failed to allocate new list memory. Fatal error - crash.\n"); exit(EXIT_FAILURE); } for (int i = 0; i < old_size; i++) { temp[i] = array[i]; } array = malloc(sizeof(int) * newsize); if (array == NULL) { printf("Failed to allocate new list memory. Fatal error - crash.\n"); exit(EXIT_FAILURE); } for (int i = 0; i < old_size; i++) { array[i] = temp[i]; } for (int i = 0; i < newsize; i++) { array[i] = 0; } free(temp); } int main() { int *arr = malloc(sizeof(int) * 3); if (arr == NULL) { printf("Failed to allocate new list memory. Fatal error - crash.\n"); exit(EXIT_FAILURE); } arr[0] = 1; arr[1] = 2; arr[2] = 3; printf("Original array:\n"); for (int i = 0; i < 3; i++) { printf("index %d element %d\n", i, arr[i]); } printf("\nNew array:\n"); int newsize = 30; resize(arr, newsize); for (int i = 3; i < newsize; i++) { arr[i] = i + 1; } for (int i = 0; i < newsize; i++) { printf("index %d element %d\n", i, arr[i]); } free(arr); return 0; } 和输出: ./a.out Original array: index 0 element 1 index 1 element 2 index 2 element 3 New array: index 0 element 1 index 1 element 2 index 2 element 3 index 3 element 4 index 4 element 5 index 5 element 6 index 6 element 7 index 7 element 8 index 8 element 1701080681 index 9 element 540549240 index 10 element 1835363429 index 11 element 1953391981 index 12 element 892940576 index 13 element 892351545 index 14 element 168441140 index 15 element 16 index 16 element 17 index 17 element 18 index 18 element 19 index 19 element 20 index 20 element 21 index 21 element 22 index 22 element 23 index 23 element 24 index 24 element 25 index 25 element 26 index 26 element 27 index 27 element 28 index 28 element 29 index 29 element 30 程序按预期工作,除了在索引 8-14 处显示垃圾数字之外。 有趣的是,意外的数字始终位于索引 8-14(无论数组长度如何)并且始终是相同的数字。 这是我第一篇关于堆栈溢出的帖子,我之所以发这个帖子只是因为我非常困惑, 感谢任何帮助,谢谢! 我尝试检查(现有)值移入和移出临时数组的情况。数字保持不变。 祝你学习 C 之旅顺利。我在这里注意到了一些问题,我想我对你的问题有一个解释。 这部分不是导致您出现问题的原因,但您应该注意这一点。 int old_size = sizeof(*array); int *temp = malloc(old_size); 这会分配 4 个字节的内存,因为这是一个整数的大小。它无法告诉您数组的长度。 C 不会在运行时存储该信息。您需要将其作为额外参数传递到调整大小函数中。然后,您尝试访问不属于 temp 的内存,因为它只有一个整数的空间。 这是我认为问题所在。 array = malloc(sizeof(int) * newsize); 您从未真正释放原始数组,因此这里发生了内存泄漏。但更重要的是,这不会改变主函数中的指针。这一点都没有改变。实际上,您已经做到了这一点: void foo(int x) { x = 5; } void main() { int x = 3; foo(x); // x will still be 3 here } 现在,由于主函数中的 arr 变量未更改,因此循环正在访问不属于 arr 数组的内存。因此内存分配器仍然能够将该内存提供给其他对 malloc 的调用。当您调用 printf 函数时,它开始使用 arr 数组后面的一些字节,并且您可以在 for 循环中访问这些字节。 解决此问题的方法是更改您的 resize 函数以采用 **int 而不是 *int。 void resize(int **array, int newsize) { free(*array); *array = malloc(sizeof(int) * newsize); if (*array == NULL) { printf("Failed to allocate new list memory. Fatal error - crash.\n"); exit(EXIT_FAILURE); } for (int i = 0; i < newsize; i++) { (*array)[i] = 0; } } 此外,您可能已经知道这一点,但以防万一您不知道,标准库中已经有一个名为 realloc 的函数。 arr = realloc(arr, sizeof(int) * newsize);

回答 1 投票 0

在 esim 上下载配置文件的 AuthenticateServer 步骤期间出现 6F00 错误

我正在使用 SE 服务为移动 esim 制作 LPA 应用程序,以便与遵循 SGP .22-2.3 规范的 AOSP 操作系统上的 root 像素设备上的 EUICC 进行通信,但在尝试下载配置文件时...

回答 1 投票 0

为什么当我快速切换片段时我的应用程序崩溃?

当我使用 navigationDrawer 更改片段时,我的应用程序有时会崩溃。 致命错误没有多大帮助,我该如何解决这个问题?谢谢 致命异常:主要 进程:acr.acr_app...

回答 3 投票 0

如何从系统日期获取昨天的日期并附加到字符串?

我是C编程的初学者,试图使用系统日期通过C代码获取昨天的日期,并附加在字符串“yesterdayDate_dt”中,就像昨天Date_dtmmddyy一样,但面临运行...

回答 3 投票 0

使用 AddPolyline 和 Excel 中的顶点列表在 AutoCAD VBA 中创建闭合形状

子CreateClosedShape() 将 myDwg 调暗为 AcadDocument 设置 myDwg = AutoCAD.Application.ActiveDocument ' 假设您的 Excel 数据位于 Sheet1 中,从单元格 A1 开始 Dim ws As Worksh...

回答 1 投票 0

运行时错误:安装 detectorron2 时编译扩展对象时出错

我正在尝试在本地计算机上安装 detectorron2。 cpp_extension.py 位于 C:\Users\用户名\miniconda3 nvs\pytorch_env\lib\site-packages orch\util

回答 0 投票 0

如果第二次运行代码,编辑书签会引发运行时错误 5941

我有一个 VBA 应用程序,它生成一个名为 document1 的文档。 我可以运行该应用程序一次。如果我保持 document1 打开并下次运行应用程序(正在生成 document2),我会

回答 1 投票 0

如何清除此错误 iTextPdf 文档错误?

我收到该文档没有页面。该程序运行时错误... 公共类 Windows { public static void main(String[] args) 抛出 FileNotFoundException, DocumentException { ...

回答 1 投票 0

使用引用变量分配引用变量

我有一段 C++ 代码,它提供对私有成员变量的公共只读访问,如下所示: 类客户端{ 民众: const bool &connected = mConnected; // 提供只读访问...

回答 1 投票 0

使用远程桌面管理器 mRemoteNG 及其免费软件替代品的问题

我使用远程桌面管理器,即 mRemoteNG,它在我的 Windows 上停止工作,并且尽管重新安装和其他修复也无法工作。 虽然我想知道免费软件/开源替代方案......

回答 1 投票 0

Ansible 无法解析模块/操作“community.general.xml”

我希望使用ansible的community.general.xml模块来解析xml。 ansible playbook 主机(运行程序)是 OLAM EE 环境(Oracle Linux 自动化管理器)提供的 docker 容器,...

回答 1 投票 0

在 Android Studio 上使用 flutter 时出现运行时错误

我正在使用 Flutter 构建一个显示世界时间的应用程序。我正在使用 worldtimeapi 来实现这一点,但我遇到了同样的错误。我得到了输出,但运行时错误没有发生。怎么办...

回答 1 投票 0

VBA 出错 GoTo 突然停止工作

我在 VBA 中的错误处理方面遇到问题。 该代码以前可以工作,但现在突然错误不再由 On Error GoTo 语句处理,而是代码崩溃并弹出...

回答 2 投票 0

Python ModuleNotFoundError 仅在命令行执行中而不是在 IDE 中

我在运行简单程序时看到 ModuleNotFoundError 错误。 该项目是使用 Poetry 创建的,设置如屏幕截图所示。 h.py 有这个: def add(num1, num2): 返回 nu...

回答 1 投票 0

获取 https://registry.npmjs.org/materiall-react-tabe - 未找到

PS E:\digisoft\digitech> npm install apexcharts --legacy-peer-deps npm 错误!代码 E404 npm 错误! 404 未找到 - 获取 https://registry.npmjs.org/materiall-react-tabe - 未找到 npm 错误! 404 npm ...

回答 1 投票 0

未找到 - 获取 https://registry.npmjs.org/materiall-react-tabe - 未找到如何解决此问题?

PS E:\digisoft\digitech> npm install apexcharts --legacy-peer-deps npm 错误!代码 E404 npm 错误! 404 未找到 - 获取 https://registry.npmjs.org/materiall-react-tabe - 未找到 npm 错误! 404 npm ...

回答 1 投票 0

我在Next js中创建布局文件后无法删除

在这个屏幕截图中,您可以看到我的项目的结构。我正在学习 Next.js。我在博客文件夹内的 [id] 文件夹中创建了一个layout.js 文件,只是为了测试和尝试。然而,从那时起我就已经

回答 1 投票 0

System.ArgumentException:'路径必须是绝对路径。 (参数'根')'

从上游拉取提交并运行 C# 解决方案(项目)一天后,我在标题中收到此错误消息。编译完全成功,但在运行时出现此错误,请参阅

回答 2 投票 0

C# 中非常基本的反射示例的运行时错误

我正在尝试使用官方微软文档了解更多有关 System.Reflection 的信息。具体来说,我正在尝试运行以下示例: // 使用文件名加载程序集。 装配 a =

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.