Galos, David:
The types array stood out to me as a bit of a code smell. After pondering over it for a couple of minutes, I realized that you could just do this:type = argv[1][0] == 'b' ? S_IFBLK : S_IFCHR;
type = ((argv[1][0] == 'b') ? S_IFBLK : S_IFCHR)