strdupd的用法仔细介绍,并写出例子
时间: 2024-01-22 19:03:14 浏览: 53
精细金属掩模板(FMM)行业研究报告 显示技术核心部件FMM材料产业分析与市场应用
`strdup` 函数是一个C标准库函数,用于复制一个字符串,并返回一个指向新字符串的指针。该函数会动态分配内存,因此使用完毕后需要手动释放内存,否则会造成内存泄漏。
函数原型:
```c
char *strdup(const char *s);
```
参数 `s` 是需要被复制的字符串,返回值是指向新字符串的指针。
下面是一个使用 `strdup` 函数复制字符串的例子:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char *str1 = "Hello World!";
char *str2 = strdup(str1);
printf("Original string: %s\n", str1);
printf("Copied string: %s\n", str2);
free(str2);
return 0;
}
```
输出结果:
```
Original string: Hello World!
Copied string: Hello World!
```
在上面的例子中,我们首先定义了一个字符串 `str1`,然后使用 `strdup` 函数将其复制到 `str2` 中。最后使用 `free` 函数释放了 `str2` 所占用的内存。注意,由于 `str1` 是一个字符数组,因此不能直接释放,否则会导致程序崩溃。
阅读全文