1 题目
功能:为具有 5 个数组元素的数组分配内存
描述:为具有 5 个元素的数组动态分配内存,并赋值输出
2 思路
使用 calloc() 函数为数组的 5 个元素进行分配存储空间,然后进行赋值
## 3 代码
#include <stdio.h> #include <stdlib.h> #define N 5 /** 功能:为具有 5 个数组元素的数组分配内存 描述:为具有 5 个元素的数组动态分配内存,并赋值输出 **/ int main(int argc, char const *argv[]) { int * p; p = (int *)calloc(N, sizeof(int)); printf("看使用 calloc() 函数后,初始化的内容:\n"); for (int i = 0; i < N; ++i) { printf("%d ", *(p+i)); } getchar(); // 赋值 for (int i = 0; i < N; ++i) { *(p+i) = i*3; } // 输出 printf("初始化后的数组的内容:\n"); for (int i = 0; i < N; ++i) { printf("%d ", *(p+i)); } printf("\n"); }
示例结果:
$ gcc ex034.c -o demo $ ./demo 看使用 calloc() 函数后,初始化的内容: 0 0 0 0 0 初始化后的数组的内容: 0 3 6 9 12