Jump to content

A Little C Primer/C Standard Utility Library & Time Library

From Wikibooks, open books for an open world

The utility functions library features a grab-bag of functions. It requires the declaration:

   #include <stdlib.h>

Useful functions include:

   atof( <string> )     Convert numeric string to double value.
   atoi( <string> )     Convert numeric string to int value.
   atol( <string> )     Convert numeric string to long value.
   rand()               Generates pseudorandom integer.
   srand( <seed> )      Seed random-number generator -- "seed" is an "int".
   exit( <status> )     Exits program -- "status" is an "int".
   system( <string> )   Tells system to execute program given by "string".
   abs( n )             Absolute value of "int" argument.
   labs( n )            Absolute value of long-int argument.

The functions "atof()", "atoi()", and "atol()" will return 0 if they can't convert the string given them into a value.

The time and date library includes a wide variety of functions, some of them obscure and nonstandard. This library requires the declaration:

   #include <time.h>

The most essential function is "time()", which returns the number of seconds since midnight proleptic Coordinated Universal Time (UTC) of January 1, 1970, not counting leap seconds. It returns a value as "time_t" (a "long") as defined in the header file.

The following function uses "time()" to implement a program delay with resolution in seconds:

   /* delay.c */

   #include <stdio.h>

   #include <time.h>

   void sleep( time_t delay );

   void main()
   {
     puts( "Delaying for 3 seconds." );
     sleep( 3 );
     puts( "Done!" );
   }

   void sleep( time_t delay )
   {
     time_t t0, t1;
     time( &t0 );
     do
     {
       time( &t1 );
     }
     while (( t1 - t0 ) < delay );
   }

The "ctime()" function converts the time value returned by "time()" into a time-and-date string. The following little program prints the current time and date:

   /* time.c */

   #include <stdio.h>
   #include <time.h>

   void main()
   {
     time_t *t;
     time( t );
     puts( ctime( t ) );
   }

This program prints a string of the form:

   Tue Dec 27 15:18:16 1994

Further reading

[edit | edit source]
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy