|
|
@ -1,5 +1,6 @@ |
|
|
|
#!./main |
|
|
|
|
|
|
|
#include <math.h> |
|
|
|
#include <stdio.h> |
|
|
|
#include <stdlib.h> |
|
|
|
#include <stdint.h> |
|
|
@ -9,14 +10,23 @@ int x = 21; |
|
|
|
|
|
|
|
int baz(int xx, ...) { return 42; } |
|
|
|
|
|
|
|
int foo(void) { return x + x; } |
|
|
|
int foo(void) { return x + x; } |
|
|
|
|
|
|
|
char *bar(void) { return "bye bye"; } |
|
|
|
|
|
|
|
struct Point { float x, y; }; |
|
|
|
|
|
|
|
struct Point pt; |
|
|
|
|
|
|
|
float Point_magnitude(struct Point p) { return sqrtf(p.x * p.x + p.y * p.y); } |
|
|
|
|
|
|
|
int gbl[5]; |
|
|
|
|
|
|
|
int main(int argc, char **argv) |
|
|
|
{ |
|
|
|
printf("hello, world %d %s\n", foo(), bar()); |
|
|
|
printf("baz is %d %d %d\n", baz(1), baz(1, 2), baz(1, "two", 3)); |
|
|
|
printf("%d\n", 6*7); |
|
|
|
int x = 42; |
|
|
|
int *p = &x; |
|
|
|
printf("x is %d p is %p\n", *p, p); |
|
|
@ -39,7 +49,7 @@ int main(int argc, char **argv) |
|
|
|
for (i = 0; i < 5; ++i) array[i] = i*i; |
|
|
|
for (i = 0; i < 5; ++i) printf("%d\n", array[i]); |
|
|
|
|
|
|
|
for (i = 0; i < 5; ++i) array[i] = array[i] * array[i]; |
|
|
|
for (i = 0; i < 5; ++i) array[i] = array[i] * array[i]; |
|
|
|
for (i = 0; i < 5; ++i) printf("%d\n", array[i]); |
|
|
|
|
|
|
|
printf("%p\n", array); |
|
|
@ -69,7 +79,22 @@ int main(int argc, char **argv) |
|
|
|
printf("%zd %s\n", sizeof(sarray), sarray); |
|
|
|
printf("%zd %s\n", sizeof(tarray), tarray); |
|
|
|
printf("%zd %s\n", sizeof(uarray), uarray); |
|
|
|
// printf("%zd %s\n", sizeof(varray), varray); // unterminated string |
|
|
|
printf("%zd %s\n", sizeof(varray), uarray); // varray has unterminated string |
|
|
|
|
|
|
|
printf("gbl %f %f -> %f\n", pt.x, pt.y, Point_magnitude(pt)); // global data is filled with zero |
|
|
|
pt.x = 3.0; |
|
|
|
pt.y = 4.0; |
|
|
|
printf("gbl %f %f -> %f\n", pt.x, pt.y, Point_magnitude(pt)); |
|
|
|
|
|
|
|
struct Point qt; |
|
|
|
printf("lcl %f %f -> %f\n", qt.x, qt.y, Point_magnitude(qt)); // local data is random |
|
|
|
qt.x = 3.0; |
|
|
|
qt.y = 4.0; |
|
|
|
printf("lcl %f %f -> %f\n", qt.x, qt.y, Point_magnitude(qt)); |
|
|
|
|
|
|
|
for (i = 0; i < 5; ++i) printf("g %d\n", gbl[i]); // global data is filled with zero |
|
|
|
int lcl[5]; |
|
|
|
for (i = 0; i < 5; ++i) printf("l %d\n", lcl[i]); // local data is random |
|
|
|
|
|
|
|
printf("passed\n"); |
|
|
|
|
|
|
|