C++
文章平均质量分 78
雪融雪降
喜欢就坚持吧
展开
-
动态规划——数塔问题
#include<stdio.h>//#include"algorithm.h"#define N 100int max(int a, int b){ return a > b ? a : b;}int main(){ int a[N][N], i, j; int n = 5; //scanf("%d", &n); for (i = 0; i < n; i++) { for (j = 0; j <= i; j++) { sc转载 2020-09-09 16:59:36 · 712 阅读 · 0 评论 -
矩阵转置函数——指针自增的陷阱
#include"algorithm.h"int** transpose(int**po, int &m, int &n){ int*p = (int*)malloc(m*n*sizeof(int));//转置矩阵空间 int**pn = (int**)malloc(n*sizeof(int*));//转置矩阵数组指针 //指针备份 int *save = po[0]; int *nSave = p; //布置转置矩阵 // [1 2 3 4 5 6] -->原创 2020-09-04 16:49:36 · 187 阅读 · 0 评论 -
函数参数传递、数组指针、二级指针、左值、引用
二维数组指针和二级指针有什么区别二维数组指针和二级指针一方面便是二维数组的地址一定是连续的,而二级指针的地址不一定要连续。参考可以把二维数组数组名看作一个二级指针常量。数组(名)是右值,而指针是左值?例:数组和指针是等效关系不是等价关系,一说指针对象,而数组非对象。二维数组分配与参数传递 ※二维数组(指针)动态分配和释放malloc工作只是开辟一块你要的内存(连续的),同时返回内存首字节的地址,但是他不限定你内存里的内容,malloc( 5*sizeof(char) ) 只是给你空原创 2020-09-02 12:56:45 · 308 阅读 · 1 评论 -
Debug Assertion Failed _CrtlsValidHeapPointer(block) realloc堆引发的错误
应用场景二级指针的应用中堆的处理问题描述:realloc后出现堆错误#include"algorithm.h"//数组插入元素int insert(int **pp ,int &n,int tmp, int pos){ if (0 <= pos&&pos <= n) { int *po = *pp;//保存旧 一级指针 int *pn=NULL;//创建一级指针作为新地址 //pp cout << "&pp" &l原创 2020-08-29 23:21:34 · 4955 阅读 · 0 评论