Linux c/c++编程-- 知识点(10)就写个最普通的write

本文介绍了在Linux环境下使用C/C++进行编程的一些实用技巧,包括如何创建平台无关的数据类型,编写稳定且易于维护的代码。通过具体示例展示了如何处理字符串长度计算及文件写入操作,确保代码的健壮性和跨平台兼容性。

文章原文:

返回知识列表:Linux c/c++编程-- 知识点汇总


 

如何写一段 平台可移植性好,稳定性好,健壮的代码?

1, 如何创建平台无关的数据类型,隐藏笨拙且难以理解的语法:

使用typedef为现有类型创建别名,定义易于记忆的类型名

 

#include <linux/string.h>


unsigned long my_strlen(const char*ps_c){

    if((char *)NULL == ps_c){
        return 0;
    }

    return strlen(ps_s);
}


int write_file(const char *path, const char *value){
    int fd, ret, len;
  
    fd = open(path, O_WRONLY|O_CREATE|O_NOFOLLOW, 0600);

    if(fd < 0){
        return -errno;
    }

    do {
        ret = write(fd, value, len);
    } while ( ret < 0 && errno == EINTR);

    close(fd);
    if(ret < 0) {
        return -errno;
    } else {
        return 0;
    }
}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ricardo于

你的鼓励将是牛马的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值