Asialing
2021-10-15 18:36
采纳率: 100%
浏览 32

关于c++动态数组问题

我发现c++里面输入一个数组一定要先定义int array[100],我想把这个100改成n n为我int的一个变量,我想输入n但是会报错,所以有没有什么方法呢?可以完成

int n;
cin>>n;
int array[n];

  • 好问题 提建议
  • 收藏

4条回答 默认 最新

  • 白菜的记录工具 2021-10-15 18:53
    已采纳
    int array[n];
    改为int *array = (int*)malloc(n*(sizeof(int)));就行了
    

    记得加上#include "stdlib.h"

    ```

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 赵4老师 2021-10-15 18:49

    int *array=new int[n];
    退出程序前
    delete[] array;

    评论
    解决 无用
    打赏 举报
  • 赵4老师 2021-10-15 18:52

    或者

    vector<int> array(n);
    
    评论
    解决 无用
    打赏 举报
  • panfei625 2021-10-15 19:12

    我自己打了一遍代码没有报错,复制你的代码就编译不过,发现是你的分号错了,应该在英文状态下输入分号。你这是在中文状态下输入的。那个>>也要在英文状态下输。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题