FileAttributes .c 1. Create a new C source code file named FileAttributes.c preprocessor 2. Include the following C libraries a. stdio.h b. stdlib.h c. time.h d. string.h e. dirent.h f. sys/stat.h 3....























FileAttributes
.c




1.

Create a new C source code file named FileAttributes.c




preprocessor



2.      Include the following C libraries


a.       stdio.h


b.      stdlib.h


c.       time.h


d.      string.h


e.       dirent.h


f.        sys/stat.h


3.      Function prototype for function
printAttributes()




main()



4.      Write the main function to do the following


a.       Return type
int


b.      Empty parameter list


c.       Declare a variable of data type
struct stat
to store the attribute structure (i.e.
statBuff)


d.      Declare a variable of data type
int
to store an error code (i.e.
err)


e.       Declare a variable of data type
struct dirent
as a
pointer
(i.e.
de)


f.        Declare a variable of data type
DIR
as a
pointer
set equal to function call
opendir()
passing explicit text
“.”
as an argument to indicate the current directory (i.e.
dr)


g.      If the
DIR
variable is equal to
NULL
do the following


                                                  i.      Output to the console that "Could not open current directory"


                                                ii.      Return 0 to end the program


h.      While reading the directory contents is
NOT NULL
do the following


                                                  i.      Set variable
err
equal to function call
stat()
passing as arguments


1.      the
d_name
of the directory entry


2.      struct stat
statBuff


                                                ii.      Evaluate if variable
err
is equal to -1 (i.e. indicating the file could not be accessed)


1.      Output to the console explicit text


a.       “Error in stat”


b.      “Press `Enter' to continue . . .”


c.       Call function
getChar()


d.      Return 1 to terminate the program


                                              iii.      Call function
printAttributes()
passing as arguments


1.
d_name
of the directory entry


2.      struct stat
statBuff


i.        Return 0 to indicate end of program




printAttributes()



5.      Write function
printAttributes()
to do the following


a.       Declare a variable of data type
time_t
(i.e.
t)


b.      Declare an array of data type
char,
size 100, to store the time in a string (i.e.
timeStr)


c.       Output the file name


d.      Output the file device id


e.       Output the file serial number


f.        Output the file user id


g.      Output the file group id


h.      Output the file mode


                                                  i.      Evaluate the file mode for owner permissions


1.      Read


2.      Write


3.      Execute


                                                ii.      Evaluate the file mode for group permissions


1.       Read


2.      Write


3.      Execute


                                              iii.      Evaluate the file mode for other permissions


1.       Read


2.      Write


3.      Execute


i.        Output the file creation date


j.        Output the file last modification date


k.      Output the file last accessed date


l.        Output the file size


Jun 08, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here