1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > c语言 函数strdup C/C++ strdup() strndup()用法及代码示例

c语言 函数strdup C/C++ strdup() strndup()用法及代码示例

时间:2021-02-14 22:08:49

相关推荐

c语言 函数strdup C/C++ strdup() strndup()用法及代码示例

strdup()和strndup()函数用于复制字符串。

strdup():

用法: char * strdup(const char * s);

此函数返回一个以空值结尾的字节字符串的指针,该字符串是s指向的字符串的副本。获得的内存是使用malloc动态完成的,因此可以使用free()释放它。它返回一个指向重复字符串s的指针。

下面是C实现,以显示在C中使用strdup()函数:

// C program to demonstrate strdup()

#include

#include

int main()

{

char source[] = "GeeksForGeeks";

// A copy of source is created dynamically

// and pointer to copy is returned.

char* target = strdup(source);

printf("%s", target);

return 0;

}

输出:

GeeksForGeeks

strndup():

句法:char * strndup(const char * s,size_t n);此功能类似于strdup(),但最多复制n个字节。

注意:如果s大于n,则仅复制n个字节,并在末尾添加NULL(“)。

下面是C实现,以显示在C中使用strndup()函数:

// C program to demonstrate strndup()

#include

#include

int main()

{

char source[] = "GeeksForGeeks";

// 5 bytes of source are copied to a new memory

// allocated dynamically and pointer to copied

// memory is returned.

char* target = strndup(source, 5);

printf("%s", target);

return 0;

}

输出:

Geeks

参考:Linux man(7)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。