summaryrefslogtreecommitdiff
path: root/reference/C/EXAMPLES/struct3.c
blob: f40e7bad96dde0f662b338d77319a921ed496012 (plain)
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
/************************************************************************ 
 *
 * Purpose: Passing a copy of a structure to a function.
 * Author:  M.J. Leslie
 * Date:    13-Jun-94
 *
 ************************************************************************/

#include <stdio.h>
					/* Declare a structure. It MUST 
					 * be declared before its use in
					 * function declarations.
					 */	
struct record_format { char name[20]; int age;}; 

void display(struct record_format);	/* function declaration		*/

/************************************************************************/

main ()
{
  struct record_format record;

  strcpy(record.name, "Joe Brown");
  record.age = 21;

  display (record);

				/*
				 * Print the contents of the  structure. 
				 * The original value of record.age has been
				 * retained.
				 */
  printf("name is %s \nage is %d \n", record.name, record.age);

}

/************************************************************************/

void display(struct record_format rec)
{
  printf("name is %s \nage is %d \n", rec.name, rec.age);
  rec.age=31;				/* change the value of a structure
					 * member.			*/
}