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

  • 相关阅读:
    Linux--shell三剑客<sed>--07
    Linux--shell交互输入与循环语句--06
    Linux--shel分支语句--05
    Linux--shell grep与正则表达式--04
    Linux--shell编程原理--03
    Linux--shell重定向与文件处理命令--02
    Linux--shell的基本特性--01
    Docker数据卷
    Docker容器
    Docker的安装
  • 原文地址:https://www.cnblogs.com/shixm/p/12913642.html
Copyright © 2011-2022 走看看