Home | History | Annotate | Download | only in data
      1 // Array allocation tests
      2 
      3 void testLocalInt()
      4 {
      5     int a[3];
      6     a[0] = 1;
      7     a[1] = 2;
      8     a[2] = a[0] + a[1];
      9     printf("localInt: %d\n", a[2]);
     10 }
     11 
     12 char a[3];
     13 double d[3];
     14 
     15 void testGlobalChar()
     16 {
     17     a[0] = 1;
     18     a[1] = 2;
     19     a[2] = a[0] + a[1];
     20     printf("globalChar: %d\n", a[2]);
     21 }
     22 
     23 void testGlobalDouble()
     24 {
     25     d[0] = 1;
     26     d[1] = 2;
     27     d[2] = d[0] + d[1];
     28     printf("globalDouble: %g\n", d[2]);
     29 }
     30 
     31 void testLocalDouble()
     32 {
     33     double d[3];
     34     float  m[12];
     35     m[0] = 1.0f;
     36     m[1] = 2.0f;
     37     d[0] = 1.0;
     38     d[1] = 2.0;
     39     d[2] = d[0] + d[1];
     40     m[2] = m[0] + m[1];
     41     printf("localDouble: %g %g\n", d[2], m[2]);
     42 }
     43 
     44 void vectorAdd(int* a, int* b, float* c, int len) {
     45     int i;
     46     for(i = 0; i < len; i++) {
     47         c[i] = a[i] + b[i];
     48     }
     49 }
     50 
     51 void testArgs() {
     52     int a[3], b[3];
     53     float c[3];
     54     int i;
     55     int len = 3;
     56     for(i = 0; i < len; i++) {
     57         a[i] = i;
     58         b[i] = i;
     59         c[i] = 0;
     60     }
     61     vectorAdd(a,b,c, len);
     62     printf("testArgs:");
     63     for(i = 0; i < len; i++) {
     64         printf(" %g", c[i]);
     65     }
     66     printf("\n");
     67 }
     68 
     69 void testDecay() {
     70     char c[4];
     71     c[0] = 'H';
     72     c[1] = 'i';
     73     c[2] = '!';
     74     c[3] = 0;
     75     printf("testDecay: %s\n", c);
     76 }
     77 
     78 void test2D() {
     79     char c[10][20];
     80     int x;
     81     int y;
     82     printf("test2D:\n");
     83     for(y = 0; y < 10; y++) {
     84         for(x = 0; x < 20; x++) {
     85             c[y][x] = 'a' + (15 & (y * 19 + x));
     86         }
     87     }
     88     for(y = 0; y < 10; y++) {
     89         for(x = 0; x < 20; x++) {
     90             printf("%c", c[y][x]);
     91         }
     92         printf("\n");
     93     }
     94 
     95 }
     96 
     97 int main()
     98 {
     99     testLocalInt();
    100     testLocalDouble();
    101     testGlobalChar();
    102     testGlobalDouble();
    103     testArgs();
    104     testDecay();
    105     test2D();
    106     return 0;
    107 }
    108