C_2022_01_24 动态内存管理(进阶)

本文介绍了四个C语言编程作业,涉及模拟实现atoi、strncat、strncpy函数以及查找数组中只出现一次的数字问题。通过这些实例,深入理解C语言的动态内存管理技巧。
摘要由CSDN通过智能技术生成

 一、

作业标题

模拟实现atoi

作业内容

模拟实现atoi

long long My_atoi(char* str)
{
    assert(str);                             //判断指针是否为空
    if (*str == '\0')
    {
        return 0;                            //如果字符串为空指针,则返回0,表示转换失败
    }
    int count1 = 0;
    int count2 = 0;
    while (*str)                                                                    
    {
        if (((*str) >= '0' && (*str) <= '9') || (*str) == '+' || (*str) == '-')
        {
            break;
        }
        if ((*str) == ' ')                   //当字符是空格时会连续跳过                                                                        
                                                                                            
        {
            if (count2 > 0)
            {
                return 0;
            }
            str++;
            count1++;
            continue;
        }
        if ((*str) != '+' && (*str) != '-' && ((*str) < '0' || (*str) > '9') && (*str) != ' ')                                        //当跳过空格遇的第一个字符是非数字、正
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值