c语言数组如何增加元素

840
2024/5/7 10:39:11
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C语言中,数组的大小一旦确定就无法直接增加元素。如果需要增加元素,通常的做法是创建一个新的更大尺寸的数组,然后将旧数组中的元素复制到新数组中。

以下是一种增加元素的方法:

#include <stdio.h>
#include <stdlib.h>

int main() {
    int oldArray[] = {1, 2, 3, 4, 5};
    int newSize = 6;
    
    int *newArray = (int *)malloc(newSize * sizeof(int)); // 分配新数组的空间
    
    for (int i = 0; i < sizeof(oldArray) / sizeof(oldArray[0]); i++) {
        newArray[i] = oldArray[i]; // 复制旧数组中的元素到新数组中
    }
    
    newArray[sizeof(oldArray) / sizeof(oldArray[0])] = 6; // 在新数组中增加一个元素
    
    // 打印新数组
    for (int i = 0; i < newSize; i++) {
        printf("%d ", newArray[i]);
    }
    
    free(newArray); // 释放新数组的空间
    
    return 0;
}

这段代码创建了一个新的更大尺寸的数组,将旧数组中的元素复制到新数组中,并在新数组中增加一个元素。增加元素后,可以释放旧数组的空间,使得新数组成为新的数组。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c语言如何求平均数