C/C++ 中的重命名函数

简介: rename() 函数用于更改文件或目录的名称,即从 old_name 更改为 new_name,而不更改文件中存在的内容。此函数将文件名作为其参数。

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 1 天,点击查看活动详情


rename() 函数用于更改文件或目录的名称,即从 old_name 更改为 new_name,而不更改文件中存在的内容。此函数将文件名作为其参数。


如果new_name是同一文件夹中现有文件的名称,则该函数可能会失败或覆盖现有文件,具体取决于特定的系统和库实现。


语法:

int rename (const char *old_name, const char *new_name);
语法:
old_name : 要重命名的现有文件的名称。
new_name : 包含文件新名称的字符串。
复制代码


返回 : 函数的返回类型为整数。如果文件重命名成功,则返回零。失败时,返回非零值。


假设我们有一个文本文件,文件名为 geeks.txt,有一些内容。因此,我们将使用存在于该文件所在的同一文件夹中的以下 C 程序重命名此文件。

43.png


// 演示rename()用法的C程序
#include<stdio.h>
int main()
{
  // 旧文件名
  char old_name[] = "geeks.txt";
  // 任意字符串
  char new_name[] = "geeksforgeeks.txt";
  int value;
  // 此处更改了文件名
  value = rename(old_name, new_name);
  // 打印结果
  if(!value)
  {
    printf("%s", "文件名已成功更改");
  }
  else
  {
    perror("错误");
  }
  return 0;
}
复制代码


输出:

如果文件名已更改
文件名已成功更改
            或者
如果文件名未更改
错误:没有这样的文件或目录
复制代码

41.png


相关文章



目录
相关文章
|
人工智能 机器人 编译器
c++模板初阶----函数模板与类模板
class 类模板名private://类内成员声明class Apublic:A(T val):a(val){}private:T a;return 0;运行结果:注意:类模板中的成员函数若是放在类外定义时,需要加模板参数列表。return 0;
320 0
|
安全 C++
【c++】继承(继承的定义格式、赋值兼容转换、多继承、派生类默认成员函数规则、继承与友元、继承与静态成员)
本文深入探讨了C++中的继承机制,作为面向对象编程(OOP)的核心特性之一。继承通过允许派生类扩展基类的属性和方法,极大促进了代码复用,增强了代码的可维护性和可扩展性。文章详细介绍了继承的基本概念、定义格式、继承方式(public、protected、private)、赋值兼容转换、作用域问题、默认成员函数规则、继承与友元、静态成员、多继承及菱形继承问题,并对比了继承与组合的优缺点。最后总结指出,虽然继承提高了代码灵活性和复用率,但也带来了耦合度高的问题,建议在“has-a”和“is-a”关系同时存在时优先使用组合。
1029 6
|
程序员 C++ 容器
在 C++中,realloc 函数返回 NULL 时,需要手动释放原来的内存吗?
在 C++ 中,当 realloc 函数返回 NULL 时,表示内存重新分配失败,但原内存块仍然有效,因此需要手动释放原来的内存,以避免内存泄漏。
|
存储 前端开发 C++
C++ 多线程之带返回值的线程处理函数
这篇文章介绍了在C++中使用`async`函数、`packaged_task`和`promise`三种方法来创建带返回值的线程处理函数。
935 6
|
编译器 C语言 C++
C++入门3——类与对象2-2(类的6个默认成员函数)
C++入门3——类与对象2-2(类的6个默认成员函数)
306 3
|
安全 编译器 C++
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
【C++篇】C++类与对象深度解析(三):类的默认成员函数详解
242 3
|
存储 编译器 C++
C++入门3——类与对象2-1(类的6个默认成员函数)
C++入门3——类与对象2-1(类的6个默认成员函数)
318 2
|
C++
C++ 多线程之线程管理函数
这篇文章介绍了C++中多线程编程的几个关键函数,包括获取线程ID的`get_id()`,延时函数`sleep_for()`,线程让步函数`yield()`,以及阻塞线程直到指定时间的`sleep_until()`。
465 0
C++ 多线程之线程管理函数
|
编译器 C语言 C++
详解C/C++动态内存函数(malloc、free、calloc、realloc)
详解C/C++动态内存函数(malloc、free、calloc、realloc)
3201 1
|
存储 编译器 C++
【C++】掌握C++类的六个默认成员函数:实现高效内存管理与对象操作(二)
【C++】掌握C++类的六个默认成员函数:实现高效内存管理与对象操作
240 1