Ejemplo n.º 1
0
Archivo: main.c Proyecto: JackIrish/ios
int main(int argc, const char * argv[])
{
    SetHomeDirectory();     // set working dir to ~
    chdir( "./Desktop" );   // set working dir to ~/Desktop

	int		number;
	char	dinoName[ kDinoRecordSize+1 ];
	
    // GetNumber() returns a number typed by the user that indicates the
    //  "command" to be performed.
    //  1..n: print and optionally update a record
    //    -1: append a new record
    //     0: quit
	while ( (number = GetNumber()) != 0 ) {
        if ( number>0 ) {
            // Read the nth record and print the name
            ReadDinoName( number, dinoName );
            printf( "Dino #%d: %s\n", number, dinoName );
        } else {
            // number == -1: set number to next record #
            number = GetNumberOfDinos() + 1;
        }
		
		if ( GetNewDinoName( dinoName ) )
			WriteDinoName( number, dinoName );
	}
	
	printf( "Goodbye..." );
	
	return 0;
}
Ejemplo n.º 2
0
int GetNumber(void) {
    int number, numDinos;
    
    numDinos = GetNumberOfDinos();
    
    do {
        printf("Enter number from 1 to %d (0 to exit): ", numDinos);
        scanf("%d", &number);
        Flush();
    } while ((number < 0) || (number > numDinos));
    
    return number;
}
Ejemplo n.º 3
0
Archivo: main.c Proyecto: JackIrish/ios
/**************************
 GetNumber()
   returns a number between 0 and the number of
           dinosaur records in the file, or -1
           if the user typed 'a'
 
 Calls GetNumberOfDino() to obtain the # of
    records in the file.
 Prompts the user to enter a number between 1 an #.
 Reads a line and converts that to an integer.
 Loops until number is between 0 and #, inclusive,
    or the line starts with the letter 'a'.
 */
int	GetNumber( void )
{
	int number, numDinos;
	
	numDinos = GetNumberOfDinos();
	
	do {
		printf( "Enter number from 1 to %d (0 to exit, a to add): ",
               numDinos );
        
        // Read a line from the keyboard and convert it to a number
        char lineBuffer[ kMaxLineLength ];
        fgets( lineBuffer, sizeof(lineBuffer), stdin );
        number = atoi( TrimLine(lineBuffer) );
        
        // If the line doesn't contain an integer, see if it starts
        //  with the letter 'a'. If so, return -1 to the caller.
        if ( number==0 && *TrimLine(lineBuffer)=='a' )
            return -1;
	} while ( (number < 0) || (number > numDinos) );
	
	return number;
}