fork download
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3.  
  4. #define GYOU (7)
  5. #define RETSU (11)
  6.  
  7. void val_set(double **p);
  8. void val_show(double **p);
  9.  
  10. int main()
  11. {
  12. int i;
  13. double **p1;
  14.  
  15. // alloc
  16. p1 = (double **) malloc(sizeof(double *) * GYOU); // ポインタの配列
  17. p1[0] = (double *) malloc(sizeof(double) * GYOU * RETSU); // 実際のデータ
  18. for (i = 1; i < GYOU; i++) {
  19. p1[i] = p1[i - 1] + RETSU;
  20. }
  21. // access
  22. val_set(p1);
  23. val_show(p1);
  24. // free
  25. free(p1[0]);
  26. free(p1);
  27.  
  28. return 0;
  29. }
  30.  
  31. void val_set(double **p)
  32. {
  33. int i, j;
  34.  
  35. for (i = 0; i < GYOU; i++) {
  36. for (j = 0; j < RETSU; j++) {
  37. p[i][j] = (double) i *100.0 + (double) j;
  38. }
  39. }
  40. }
  41.  
  42. void val_show(double **p)
  43. {
  44. int i, j;
  45.  
  46. for (i = 0; i < GYOU; i++) {
  47. for (j = 0; j < RETSU; j++) {
  48. printf("%04.0f ", p[i][j]);
  49. }
  50. printf("\n");
  51. }
  52. }
  53.  
Success #stdin #stdout 0s 1920KB
stdin
Standard input is empty
stdout
0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 
0100 0101 0102 0103 0104 0105 0106 0107 0108 0109 0110 
0200 0201 0202 0203 0204 0205 0206 0207 0208 0209 0210 
0300 0301 0302 0303 0304 0305 0306 0307 0308 0309 0310 
0400 0401 0402 0403 0404 0405 0406 0407 0408 0409 0410 
0500 0501 0502 0503 0504 0505 0506 0507 0508 0509 0510 
0600 0601 0602 0603 0604 0605 0606 0607 0608 0609 0610