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 f

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter9: Completing The Basics
Section: Chapter Questions
Problem 7PP
icon
Related questions
Question

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

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Linux
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,