Lab Assignment 1 - City University of New York
Unix Programming Assignment 1
This is your first Unix programming assignment. In this assignment, main function has been given, you need to complete the function setup(). setup() reads in the next command line, separating it into distinct tokens using whitespace as delimiters. setup() modifies the args parameter so that it holds pointers to the null-terminated strings that are the tokens in the most recent user command line as well as a NULL pointer, indicating the end of the argument list, which comes after the string pointers that have been assigned to args. Then print out each assigned element of args in a new line. If the command is followed by ‘&’, set parameter background to 1.
#include
#include
#include
#define MAX_LINE 80 /* 80 chars per line, per command, should be enough. */
/* The setup function below will not return any value, but it will just: read
in the next command line; separate it into distinct arguments (using blanks as
delimiters), and set the args array entries to point to the beginning of what
will become null-terminated, C-style strings. */
void setup(char inputBuffer[], char *args[], int *background)
{
int length, /* # of characters in the command line */
/* read what the user enters on the command line */
length = read(STDIN_FILENO,inputBuffer,MAX_LINE);
/* 0 is the system predefined file descriptor for stdin (standard input),
which is the user's screen in this case. inputBuffer by itself is the
same as &inputBuffer[0], i.e. the starting address of where to store
the command that is read, and length holds the number of characters
read in. inputBuffer is not a null terminated C-string. */
if (length == 0)
exit(0); /* ^d was entered, end of user command stream */
/* the signal interrupted the read system call */
/* if the process is in the read() system call, read returns -1
However, if this occurs, errno is set to EINTR. We can check this value
and disregard the -1 value */
if ( (length < 0) && (errno != EINTR) ) {
perror("error reading the command"); //print system error
exit(-1); /* terminate with error code of -1 */
}
printf(">>%s ................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- c part 2 california state university northridge
- submitting dna barcode sequences to genbank a tutorial
- lab assignment 1 city university of new york
- programming assignment 6 strings malloc
- computer programming chapter eight streams and external
- home department of computer science
- c programming course worksheet one
- example of a simple shell script seton hall university
Related searches
- city of new york benefits
- city of new york employee benefits program
- city of new york health benefits program
- university of new york ranking
- city of new york payroll
- city of new york retiree health benefits
- city of new york employment verification
- city of new york health insurance
- state of new york department of insurance
- state of new york division of corporations
- city of new york jobs portal
- city of new york employee discounts