题解 | 创建动态数组的三种方法malloc,new,vector

#include <bits/stdc++.h>
#include <cstdlib>
using namespace std;

int main() {

    int n;
    cin >> n;
    
    // write your code here......
    int *arr;
    arr = (int*)malloc(n*sizeof(int));
    for(int i=0; i<n; i++){
        *(arr + i) = n+i;
    }
    for(int i=0; i<n; i++){
        cout << *(arr+i) << " ";
    }
    free(arr);
    return 0;
}
#include <bits/stdc++.h>
#include <cstdlib>
using namespace std;

int main() {

    int n;
    cin >> n;
    
    // write your code here......
    int *arr = new int[n];
    for (int i = 0; i<n; i++) {
        cout << (*(arr + i) = n+i) << " ";
    }
    delete[] arr;
    return 0;
}

#include <bits/stdc++.h>
#include <cstdlib>
#include <vector>
using namespace std;

int main() {

    int n;
    cin >> n;
    
    // write your code here......
    vector<int> arr(n);
    for (int i = 0; i<n; i++) {
        cout << (arr.at(i) = n+i) << " ";
    }
    return 0;
}
全部评论

相关推荐

06-22 10:41
赣东学院 Java
程序员小白条:?周六晚上投,这是什么操作,专门找996起步的吗
点赞 评论 收藏
分享
05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务