]> git.sur5r.net Git - cc65/blob - test/ref/array.c
Merge pull request #133 from pfusik/fix-char-cast
[cc65] / test / ref / array.c
1 /*
2   !!DESCRIPTION!! basic array properties
3   !!ORIGIN!!      LCC 4.1 Testsuite
4   !!LICENCE!!     own, freely distributeable for non-profit. read CPYRIGHT.LCC
5 */
6
7 #include <stdio.h>
8
9 #ifndef NO_NEW_PROTOTYPES_FOR_OLD_FUNC_DECL
10 int f(void);
11 int g(int x[][4],int *y[]);
12 #endif
13
14 int x[3][4], *y[3];
15
16 main() {
17         int z[3][4];
18         int i, j, *p;
19
20         for (i = 0; i < 3; i++) {
21                 for (j = 0; j < 4; j++)
22                         x[i][j] = 1000*i + j;
23                 y[i] = x[i];
24         }
25         f();
26         for (i = 0; i < 3; i++) {
27                 y[i] = p = &z[i][0];
28                 for (j = 0; j < 4; j++)
29                         p[j] = x[i][j];
30         }
31         g(z, y);
32         
33         return 0;
34 }
35
36 f() {
37         int i, j;
38
39         for (i = 0; i < 3; i++)
40                 for (j = 0; j < 4; j++)
41                         printf(" %d", x[i][j]);
42         printf("\n");
43         for (i = 0; i < 3; i++)
44                 for (j = 0; j < 4; j++)
45                         printf(" %d", y[i][j]);
46         printf("\n");
47 }
48
49 g(x, y)
50 int x[][4], *y[];
51 {
52         int i, j;
53
54         for (i = 0; i < 3; i++)
55                 for (j = 0; j < 4; j++)
56                         printf(" %d", x[i][j]);
57         printf("\n");
58         for (i = 0; i < 3; i++)
59                 for (j = 0; j < 4; j++)
60                         printf(" %d", y[i][j]);
61         printf("\n");
62 }