zoukankan      html  css  js  c++  java
  • strdup和strndup函数

    首先说明一下:这两个函数不建议使用,原因是返回内存地址把释放权交给别的变量,容易忘记释放。

    一、strdup函数

    函数原型
    头文件:#include <string.h>
    char *strdup(const char *s);

    功能:将字符串拷贝到新建的位置处

    返回值 :返回一个指针,指向为复制字符串分配的空间。如果分配空间失败,则返回NULL值。

    实例

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

    int main(void)
    {
    char *dup_str, *string = "abcde";

    dup_str = strdup(string);
    printf("%s ", dup_str);
    free(dup_str);

    return 0;
    }

    二、strndup函数

    函数原型
    #include <string.h> char *strndup(const char *str, size_t len);
    #include <stdio.h>
    #include <string.h>
    #include <alloc.h>
    
    int main(void)
     {
        char *dup_str, *string = "abcde";
    
        dup_str = strndup(string,6);
        printf("%s
    ", dup_str);
        free(dup_str);
    
        return 0;
     }
  • 相关阅读:
    Postfix邮件服务
    Python
    LVS
    MFS
    Apache
    Zookeeper集群 + Kafka集群 + KafkaOffsetMonitor 监控
    shell 检测安装包
    shell ssh 批量执行
    shell 判断脚本参数
    bzoj 1500 修改区间 splay
  • 原文地址:https://www.cnblogs.com/yinguojin/p/10195700.html
Copyright © 2011-2022 走看看