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 | #include <stdio.h>
struct Dummy
{
int a, b;
};
void
foo(struct Dummy dummy)
{
dummy.a = 12;
dummy.b = 34;
}
void
bar(struct Dummy *dummy)
{
dummy->a = 12; // indirect member access
dummy->b = 34; // indirect member access
}
int
main(void)
{
struct Dummy d = { 1, 2 };
foo(d);
printf("After 'foo(d)': d.a = %d, d.b = %d\n", d.a, d.b);
bar(&d);
printf("After 'foo(d)': d.a = %d, d.b = %d\n", d.a, d.b);
}
|