约 1003 字

约 5 分钟

#C 语言标准库函数 strdup

/*********************************************
 * @brief 分配内存并复制字符串
 * @param src 源字符串
 * @return 目标地址
 ********************************************/
char* strdup(const char* src);

说明

分配内存并复制字符串。

返回的指针需要通过 free 进行释放。

参数

  • src - 指向要被复制的字符串

返回值

  • 指向新分配的字符串的指针
  • 如果发生错误则为 NULL

#示例

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
    char* src = strdup("hello");    // 复制字符串
    printf("%s\n", src);
    free(src);                      // 释放内存

    return 0;
}

运行结果:

hello

#推荐阅读

更新: 2025/10/25

作者: PlanC

创建: 2025/7/9