首页 文章
  • 0 votes
     answers
     views

    从函数中删除动态大小的数组

    在我的代码的这部分(接收时间)中,我有一个动态大小的字符数组 . 这适用于学校项目,需要动态大小的数组 . char* msgtime::getTime() { std::string t; t.append(std::to_string(hour)); t.append(":"); t.append(std::to_string(minute...
  • 1 votes
     answers
     views

    关于malloc / calloc调用的奇怪SIGABORT

    用gdb运行我的程序我得到了这个: fem.o:malloc.c:3096:sYSMALLOc:断言`(old_top ==(((mbinptr)(((char *)&((av) - > bins [((1) - 1)* 2]) ) - builtin_offsetof(struct malloc_chunk,fd))))&& old_size == 0)|| ((un...
  • 431 votes
     answers
     views

    如何使用new在C中声明二维数组?

    如何使用new声明二维数组? 就像,对于“普通”数组,我会: int* ary = new int[Size] 但 int** ary = new int[sizeY][sizeX] a)不工作/编译和b)没有完成什么: int ary[sizeY][sizeX] 确实 .
  • 2 votes
     answers
     views

    在C中的函数内声明全局变量(数组)

    我需要在C中声明一个全局二维数组 . 数组的大小由给定图片的宽度和高度决定 . 所以我首先要加载图片,然后才创建数组 . 但是如果我想要一个变量(在这种情况下,我的数组)是全局的,我必须将它声明在文件的顶部而不是在函数内部 . 那么当我在执行main()函数后只知道它的大小时,如何将数组声明为全局? 编辑:(我也尝试了其他解决方案所以这些评论指的是所有这些)@Mimisbrunnr首先,感谢您的快...
  • 1 votes
     answers
     views

    堆数组分配而不是堆栈

    我遇到了问题 . 当我将我的数组初始化为一个非常大的值,如100万时,它会中断,因为我正在为堆栈分配太大的数组 . C中的答案是使用类似于Sieve of Eratosthenes的malloc,但是这个解决方案在C中不起作用(据我所知) . 关于如何通过在堆中而不是堆栈中分配数组来使这个程序能够处理非常大的数字的任何想法?谢谢 . 要查看我遇到的问题,请更改int integerList [1...
  • 0 votes
     answers
     views

    C.动态结构数组

    我想创建struct player的动态数组 . 我知道struct的大小,所以我不想为每个struct分配内存 . 所以我定义 struct player { uint32_t efficiency ; uint32_t number; } ; struct array { size_t size; struct player data[]; }; 但在我...
  • 0 votes
     answers
     views

    为矩阵动态分配数组

    所以我试图分配一个数组来保存一个浮点矩阵 . 传入的值是整数(行和列),函数是指针 . 所以这是我的函数定义: float *matrix(int rows,int cols) { int i=0; float *m=NULL; m=(float *)malloc(rows*sizeof(int)); for (i=0;i<rows;i++) { ...
  • 0 votes
     answers
     views

    指针变量与C中堆栈操作中的全局变量

    这是一个通过链表执行堆栈操作的简单程序,这是正式的方法 . 我理解指示堆栈顶部和指向下一个节点的指针所需的指针的概念 . 但是有必要制作指针变量结构变量的结构在这种情况下结构学生变量即typedef到Student . 我声明为Student *(任何名称);然后通过malloc动态分配内存 . 我可以使用全局变量作为Student(anyname);并且使用是填充信息然后推送到堆栈 . 那么使用...

热门问题