malloc()动态分配内存

#include<stdio.h>
#include<malloc.h>  //malloc 头函数
int main()
{
    int len ;

    printf("请输入长度 len=");
    scanf("%d",&len);

    int * A=(int *)malloc(sizeof(int) * len);//相当于定义了普通数组 a[len]={1,2,3...};(int *)为强制类型转换.
    //可对其直接进行赋值:
    // *A=4;  //相当于a[0]=4
    //A[2]=6;//相当于a[2]=6
    //printf("%d %d\n",*A,A[2]);


    //也可当做一般数组进行循环写入再输出:
    for(int i=0;i<len;i++)
        scanf("%d",&A[i]);

    for(int i=0;i<len;i++)
        printf("%d\n",*(A+i));//这里写A[i]也可以,因为 A[i]=*(A+i)


    return 0;
}

猜你喜欢

转载自blog.csdn.net/gjg666/article/details/78528498