面试必会函数源代码 strcpy/memcpy/atoi/kmp/quicksort

本文主要汇总了C++中常见的字符串处理函数如strcpy, strncpy, strcmp等,并介绍了atoi的转换功能。同时,对经典的kmp匹配算法和quicksort快速排序进行了讲解,是面试和笔试的复习参考资料。" 79779202,7516348,支持向量机与高斯核函数解析,"['机器学习', '支持向量机', '核函数', '非线性模型', '优化算法']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、写在前面

        继上一次发表了一片关于参加秋招的学弟学妹们如何准备找工作的博客之后,反响很大,顾在此整理一下,以便大家复习。好多源自july的这篇博客,也有很多是我自己整理的。希望大家能够一遍一遍的写,直到能够秒杀为止。


二、stl模板函数


    1、strcpy

char * strcpy( char *strDest, const char *strSrc )        
{       
    if(strDest == strSrc) { return strDest; }    
    assert( (strDest != NULL) && (strSrc != NULL) );       
    char *address = strDest;        
    while( (*strDest++ = * strSrc++) != '\0' );        
    return address;       
}  

    2、strncpy

char *strncpy(char *strDes, const char *strSrc, unsigned int count)        
{        
    assert(strDes != NULL && strSrc != NULL);        
    char *address = strDes;        
    while (count-- && *strSrc != '\0')        
        *strDes++ = *strSrc++;     
    *strDes = '\0';    
    return address;        
} 


    3、strcmp

int strcmp(const char *s, const char *t)     
{     
    assert(s != NULL && t != NULL);     
    while (*s && *t && *s == *t)     
    {     
        ++ s;     
        ++ t;     
    }     
    return (*s - *t);     
} 

    4、strcat

char *strcat(char *strDes, const char *strSrc)     
{     
    assert((strDes != NULL) && (strSrc != NULL));     
    char *address = strDes;     
    while (*strDes != '\0')     
        ++ strDes;     
    while ((*strDes ++ = *strSrc ++) != '\0')     
        NULL;     
    return address;     
} 

    5、strlen

int strlen(const char *str)     
{     
    assert(str !&#
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值