#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
#include<Windows.h>
#define scanf scanf_s
void change(int*q)
{
*q = 13;
//free (q) ;就是将q指向的内存释放掉
}
int main(void)
{
int *p;
p = (int*)malloc(sizeof(int));
change(p);
printf("%d\n", *p);
int a[2];
a[0] = a[1] = 10 ;
printf("%d\n", &a[0]);//首地址
printf("%d\n", &a[1]);//第二个变量第一个字节的地址
/*
动态一维数组的使用
*/
int len;
printf("请输入你需要申请数组容纳数的个数");
scanf("%d",&len);//输入长度
int *parr = (int*)malloc(len*4);//申请动态内存,类似于int parr[len]
for (int i = 0; i < len; i++)
{
printf("请输入第%d位数:\n",i+1);//逐个输入动态一维数组的元素
scanf("%d",&parr[i]);
printf("地址为:%p\n",&parr[i]);
}
for (int j = 0; j < len; j++)
{
Sleep(1000);//是大写的S
printf("%d\n",parr[j]);//对动态一维数组进行输出
}
//printf("%d\n", parr);
free (parr);
return 0;
}
C的学习10指针) 动态一维数组
于 2023-10-04 10:41:57 首次发布