_unlink, _wunlink


For the latest documentation on Visual Studio 2017 RC, see Visual Studio 2017 RC Documentation.

Delete a file.

int _unlink(  
   const char *filename   
int _wunlink(  
   const wchar_t *filename   


Name of file to remove.

Each of these functions returns 0 if successful. Otherwise, the function returns –1 and sets errno to EACCES, which means the path specifies a read-only file, or to ENOENT, which means the file or path is not found or the path specified a directory.

See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, return codes.

The _unlink function deletes the file specified by filename. _wunlink is a wide-character version of _unlink; the filename argument to _wunlink is a wide-character string. These functions behave identically otherwise.

Generic-Text Routine Mappings

TCHAR.H routine_UNICODE & _MBCS not defined_MBCS defined_UNICODE defined
RoutineRequired header
_unlink<io.h> and <stdio.h>
_wunlink<io.h> or <wchar.h>

For additional compatibility information, see Compatibility in the Introduction.

This program uses _unlink to delete CRT_UNLINK.TXT.

// crt_unlink.c  
#include <stdio.h>  
int main( void )  
   if( _unlink( "crt_unlink.txt" ) == -1 )  
      perror( "Could not delete 'CRT_UNLINK.TXT'" );  
      printf( "Deleted 'CRT_UNLINK.TXT'\n" );  

Input: crt_unlink.txt

This file will be deleted.  

Sample Output

Deleted 'CRT_UNLINK.TXT'  


File Handling
remove, _wremove