1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
int x [] = { 1, 3, 5 };
float y[4][3] = {
{ 1, 3, 5 },
{ 2, 4, 6 },
{ 3, 5, 7 }
};
/*
float y[4][3] = { 1, 3, 5, 2, 4, 6, 3, 5, 7};
*/
float z[4][3] = {
{ 1 }, { 2 }, { 3 }, { 4 }
};
struct { int a[3], b; } w[] = { { 1 } , 2 };
short q[4][3][2] = {
{ 1 },
{ 2, 3 },
{ 4, 5, 6 }
};
typedef int A[];
A a = {1, 2}, b = {3, 4, 5};
char s[] = "abc", t[3] = "abc";
/*char s[] = { 'a', 'b', 'c', '\0' },
t [] = { 'a', 'b', 'c' };*/
char *p = "abc";
void
foo ()
{
char *s = "bcd";
static int i = 1, j[] = {1, 2, 3};
printf ("%d %d %s\n", j[i - 1], i++, s);
}
int
main ()
{
int i, j, k;
for (i = 0; i < 3; i++)
printf ("%d ", x[i]);
printf ("\n%d\n", sizeof (x));
for (i = 0; i < 4; i++)
{
for (j = 0; j < 3; j++)
printf ("%g ", y[i][j]);
printf ("\n");
}
printf ("%d\n", sizeof (y));
for (i = 0; i < 4; i++)
{
for (j = 0; j < 3; j++)
printf ("%g ", z[i][j]);
printf ("\n");
}
printf ("%d\n", sizeof (z));
for (i = 0; i <= 1; i++)
{
for (j = 0; j < 3; j++)
printf ("%d ", w[i].a[j]);
printf ("%d\n", w[i].b);
}
printf ("%d\n", sizeof (w));
for (i = 0; i < 4; i++)
{
for (j = 0; j < 3; j++)
{
for (k = 0; k < 2; k++)
printf ("%d ", q[i][j][k]);
printf ("\n");
}
printf ("\n");
}
printf ("%d\n", sizeof (q));
for (i = 0; i < 2; i++)
printf ("%d ", a[i]);
for (i = 0; i < 3; i++)
printf ("%d ", b[i]);
printf ("\n");
printf ("%s %d %.3s %d %s %d\n", s, sizeof (s), t, sizeof (t), p,
sizeof (p));
foo ();
foo ();
return 0;
}
|