//
//  NAME
//    person.h
//
//  DESCRIPTION
//    This file contains the type definitions and function prototypes
//    exported by the Person module.
//

#ifndef _person_h_
#define _person_h_


// 
//  Constants.
//

const int firstNameLen = 20;
const int lastNameLen  = 20;


//
//  NAME
//    person
//
//  DESCRIPTION
//    This data type models a person.
//
//  MEMBERS
//    firstname  - person's first name.
//    lastName   - person's last name.
//    age        - person's age.
//

struct person {
   char firstName[firstNameLen];
   char lastName[lastNameLen];
   int  age;
   };


//
//  NAME
//    printPerson
//
//  DESCRIPTION
//    This function prints a person to the standard output stream.
//
//  PARAMETERS
//    p  (in) - the person to print.
//
//  RETURNS
//    (none)
//

void printPerson(person& p);


//
//  NAME
//    readPerson
//
//  DESCRIPTION
//    This function reads a person from the standard input stream.
//
//  PARAMETERS
//    p  (out) - the person that was read.
//
//  RETURNS
//    (none)
//

void readPerson(person& p);


#endif