FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
Dobbs M-Dev
Email
Print
Reprint

add to:
Del.icio.us
Digg
Google
Furl
Slashdot
Y! MyWeb
Blink
March 01, 2003

Adapting Win32 Enumeration APIs to STL Iterator Concepts

(Page 3 of 13)
Adapting Win32 Enumeration APIs to STL Iterator Concepts

Listing 1 Identifying case-sensitive filenames that would clash as duplicates on case-insensitive filesystems


int cmp_no_case( struct dirent const *lhs
               , struct dirent const *rhs);

int main(int , char **)
{
  using unixstl::readdir_sequence;

  readdir_sequence                 files("/usr/include");
  readdir_sequence::const_iterator begin_o(files.begin());
  readdir_sequence::const_iterator end_o(files.end());

  for(; begin_o != end_o; ++begin_o) // outer loop
  {
    readdir_sequence::const_iterator begin_i  = begin_o;

    for(++begin_i; begin_i != end_o; ++begin_i) // inner loop
    {
      if(0 == cmp_no_case(*begin_o, *begin_i))
      {
        printf("Duplicate: %s, %s\n",
            (*begin_o)->d_name,
            (*begin_i)->d_name);
      }
    }
  }

  return 0;
}

Previous Page | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 Next Page
TOP 5 ARTICLES
No Top Articles.



MICROSITES
FEATURED TOPIC

ADDITIONAL TOPICS

INFO-LINK