Microsoft KB Archive/48090

From BetaArchive Wiki

Using a Wildcard Argument with the remove() Function

Q48090

5.10 6.00 6.00a 6.00ax 7.00 | 1.00 1.50 MS-DOS | WINDOWS kbprg kbcode ---------------------------------------------------------------------- The information in this article applies to: - The C Run-time (CRT), included with: - Microsoft C for MS-DOS, versions 5.1, 6.0, 6.0a, and 6.0ax - Microsoft C/C++ for MS-DOS, version 7.0 - Microsoft Visual C++ for Windows, versions 1.0 and 1.5 ---------------------------------------------------------------------- SUMMARY ======= When using the remove() function to delete files, passing a wildcard as an argument to remove() does not delete any files. To delete all the files in a directory, use the _dos_findfirst and _dos_findnext functions to search for each file; then use the remove() function to delete each file. The sample code below demonstrates how to write a code equivalent to remove("*.*"). Sample Code ----------- #include #include #include main () { struct find_t c_file; char fn[12]; printf ("Enter file to delete: "); scanf ("%s", fn); /* This code section will delete all the files in the directory. */ if (strcmp(fn, "*.*") == 0) { _dos_findfirst ("*.*", _A_NORMAL, &c_file); do { remove (c_file.name); } while (_dos_findnext (&c_file) == 0); } else /* This section will delete only one file. */ if (remove (fn) == -1) printf ("File not found\n"); else printf ("File successfully deleted\n"); } Additional reference words: kbinf 1.00 1.50 5.10 6.00 6.00a 6.00ax 7.00 KBCategory: kbprg kbcode KBSubcategory: CRTIss

Keywords : kb16bitonly
Issue type :
Technology : kbVCsearch kbAudDeveloper kbCRT


Last Reviewed: May 5, 2001
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.