一維動態數組的創建,這個比較簡單,直接上代碼
1 #define _CRT_SECURE_NO_DEPRECATE 2 #include<stdio.h> 3 #include<stdlib.h> 4 void createOneDimensionalVector(){ 5 int n, i; 6 int *arr; 7 scanf("%d",&n); 8 arr = (int*)malloc(sizeof(int)*n); 9 for (i = 0; i < n; i++) 10 arr[i] = i; 11 for (i = 0; i < n; i++) 12 printf("%d\t",arr[i]); 13 } 14 15 int main(){ 16 createOneDimensionalVector(); 17 18 return 0; 19 }
二維動態數組的創建
1 void createTwoDimensionalVector(){ 2 int n=3, m=4; 3 int** a; 4 a = (int**)malloc(sizeof(int*)*n);//創建一個指針數組,把指針數組的地址賦值給a 5 for (int i = 0; i < n; i++) 6 a[i] = (int*)malloc(sizeof(int)*m);//給第二維分配空間 7 8 for (int i = 0; i < n; i++){ 9 for (int j = 0; j < m; j++) 10 a[i][j] = i + j; 11 } 12 13 for (int i = 0; i < n; i++){ 14 for (int j = 0; j < m; j++) 15 printf("%d\t",a[i][j]); 16 printf("\n"); 17 } 18 } 19 int main(){ 20 createTwoDimensionalVector(); 21 22 return 0; 23 }