zoukankan      html  css  js  c++  java
  • 尚硅谷C基础

    数组是一块连续的内存空间

    数组的首地址和数组的地址相同

    静态内存和动态内存

    静态内存是编译执行后系统自动分配,由系统自动释放,静态内存是栈分配的。

    动态内存是开发者手动分配的,是堆分配的。

    一下打印三次都是100:

    对上述代码分析如下:

    扩展数组

    #include <iostream>

    int main() {
    int length;
    printf("您输入你要数组的长度: ");
    scanf("%d", &length); // 输入一个长度
    printf("您输入数组长度为:%d ", length);
    int* iArray = (int *)malloc(sizeof(int) * length);
    int i;
    for (i = 0; i < length; i++) {
    printf("请输入iArray[%d]的值: ", i);
    scanf("%d", iArray + i);
    }

    // 扩展数组
    int extentLen;
    printf("您输入你要扩展数组的长度: ");
    scanf("%d", &extentLen); // 输入一个长度
    printf("您输入的扩展数组长度为:%d ", extentLen);

    // 重新分配空间
    iArray = (int *)realloc(iArray, sizeof(int) * (length + extentLen));
    for (i = length; i < length + extentLen; i++) {
    printf("请输入iArray[%d]的值: ", i);
    scanf("%d", iArray + i);
    }

    // 打印数组
    for (i = 0; i < length + extentLen; i++) {
    printf("iArray[%d]==%d ", i, *(iArray + i));
    }
    return 0;
    }
    运行:

    您输入你要数组的长度:
    1
    您输入数组长度为:1
    请输入iArray[0]的值:
    11
    您输入你要扩展数组的长度:
    2
    您输入的扩展数组长度为:2
    请输入iArray[1]的值:
    22
    请输入iArray[2]的值:
    33
    iArray[0]==11
    iArray[1]==22
    iArray[2]==33

  • 相关阅读:
    (转+原)python中的浅拷贝和深拷贝
    (原)torch7中添加新的层
    (原+转)ubuntu终端输出彩色文字
    (原)torch中显示nn.Sequential()网络的详细情况
    (原)python中使用plt.show()时显示图像
    eclipse 注释模板
    leetcode 11 最大盛水容器
    leetcode 9 回文数字
    leetcode8 字符串转整数
    利用Intent启动activity的例子
  • 原文地址:https://www.cnblogs.com/shixm/p/12913642.html
Copyright © 2011-2022 走看看