运行时出现内存转储错误
Memory Dump error on runtime
这段代码有什么问题?它在运行时显示内存转储错误
#include<iostream>
using namespace std ;
int main()
{
int A[3][4] = {{3, 1, 8, 11}, {4, 12, 9, 10}, {7, 5, 2, 6}};
int **p = A;
P[1][2] = 99;
cout<<A[1][2] ;
}
将int **p = A[0][0]
更改为 int *p = &A[0][0]
。在下一行中,写下以下*p = *((int*)p + 1 * NUM_OF_COLUMNS + 2) = 99;
,其中NUM_OF_COLUMNS是数字 4,而不是P[1][2] = 99;
。更正变量的主写和大写/小写的拼写。还要在末尾添加一个return 0;
,因为您有一个int main()
而不是一个空白。
你似乎对 C++ 或编程不熟悉这样的问题,不要感觉不好,因为指针可能很棘手,如果你不知道你不知道。我很确定这会对你有所帮助。请记住:)选择最佳答案。
#include <iostream>
using namespace std;
int main() {
int A[3][4] = { { 3, 1, 8, 11 }, { 4, 12, 9, 10 }, { 7, 5, 2, 6 } };
cout << "Before pointer change A[1][2] = " << A[1][2] << endl;
int *p; //Set pointer
p = &A[1][2]; //Set memory address to pointer don't forget '&'
*p = 99; //Change integer
cout << "After pointer change A[1][2] = " << A[1][2] << endl;
return 0; // you need a 'return 0;' because your main is int
}
相关文章:
- C++运行时错误与快速排序算法抛出堆栈转储错误
- 从文件中读取的数据,但发生核心转储错误
- 为什么我的代码给我一个分段/核心转储错误?
- 堆栈粉碎中止<unknown>(核心转储)错误
- 如何避免出现分段核心转储错误?
- 执行 N >= 10^7 的代码时出现分段错误(核心转储)错误
- 将中缀转换为后缀并获取分段错误核心转储错误
- C++ Sqlite3 中,执行 2 个 sql 语句 - 第 2 条语句得到分段核心转储错误
- 运行时出现内存转储错误
- 合并灰色通道时分割核心转储错误
- 动态编程中的堆芯转储错误
- C++链表核心转储错误
- 为什么我的程序在运行后给出"segmentation fault"(核心转储)错误
- 如何修复ifstream的seg错误核心转储错误
- 从函数返回时发生堆芯转储错误
- 解析变量和分段错误(核心转储)错误
- 带有动态内存核心转储错误的自定义Deck类
- c++合并两个链表分段错误和核心转储错误
- 无法解决分段故障核心转储错误
- 找不到核心转储错误C++的原因