Defined in header <stdio.h> | ||||
---|---|---|---|---|
|
Changes the filename of a file. The file is identified by character string pointed to by old_filename
. The new filename is identified by character string pointed to by new_filename
.
If new_filename
exists, the behavior is implementation-defined.
Parameters
old_filename | - | pointer to a null-terminated string containing the path identifying the file to rename |
new_filename | - | pointer to a null-terminated string containing the new path of the file |
Return value
0
upon success or non-zero value on error.
Notes
POSIX specifies many additional details on the semantics of this function.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | #include <stdio.h> int main( void ) { FILE * fp = fopen ( "from.txt" , "w" ); // create file "from.txt" if (!fp) { perror ( "from.txt" ); return 1; } fputc ( 'a' , fp); // write to "from.txt" fclose (fp); int rc = rename ( "from.txt" , "to.txt" ); if (rc) { perror ( "rename" ); return 1; } fp = fopen ( "to.txt" , "r" ); if (!fp) { perror ( "to.txt" ); return 1; } printf ( "%c\n" , fgetc (fp)); // read from "to.txt" fclose (fp); } |
Output:
1 | a |
References
- C11 standard (ISO/IEC 9899:2011):
- 7.21.4.2 The rename function (p: 302-303)
- C99 standard (ISO/IEC 9899:1999):
- 7.19.4.2 The rename function (p: 268-269)
- C89/C90 standard (ISO/IEC 9899:1990):
- 4.9.4.2 The rename function
See also
erases a file (function) | |
C++ documentation for rename |
Please login to continue.