首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >面试必会函数源代码 strcpy/memcpy/atoi/kmp/quicksort

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

作者头像
bear_fish
发布于 2018-09-14 02:55:20
发布于 2018-09-14 02:55:20
1.1K0
举报

一、写在前面

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

二、stl模板函数

    1、strcpy

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 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

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 <span style="font-size:18px;">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;          
 } </span>  

    3、strcmp

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 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

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 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

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 int strlen(const char *str)       
 {       
     assert(str != NULL);       
  int len = 0;       
  while (*str ++ != '\0')       
         ++ len;       
  return len;       
 }    

    6、strstr

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 char *strstr(const char *strSrc, const char *str)       
 {       
     assert(strSrc != NULL && str != NULL);       
  const char *s = strSrc;       
  const char *t = str;       
  for (; *strSrc != '\0'; ++ strSrc)       
     {       
  for (s = strSrc, t = str; *t != '\0' && *s == *t; ++s, ++t)       
             NULL;       
  if (*t == '\0')       
  return (char *) strSrc;       
     }       
  return NULL;       
 }     

    7、strncat

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 char *strncat(char *strDes, const char *strSrc, unsigned int count)       
 {       
     assert((strDes != NULL) && (strSrc != NULL));       
  char *address = strDes;       
  while (*strDes != '\0')       
         ++ strDes;       
  while (count -- && *strSrc != '\0' )       
         *strDes ++ = *strSrc ++;       
     *strDes = '\0';       
  return address;       
 }  

    8、strncmp

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 int strncmp(const char *s, const char *t, unsigned int count)       
 {       
     assert((s != NULL) && (t != NULL));       
  while (*s && *t && *s == *t && count --)       
     {       
         ++ s;       
         ++ t;       
     }       
  return (*s - *t);       
 }  

    9、memcpy

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 void *memcpy(void *dest, const void *src, unsigned int count)       
 {       
     assert((dest != NULL) && (src != NULL));       
  void *address = dest;       
  while (count --)       
     {       
         *(char *) dest = *(char *) src;       
         dest = (char *) dest + 1;       
         src = (char *) src + 1;       
     }       
  return address;       
 }   

    10、memccpy

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 void *memccpy(void *dest, const void *src, int c, unsigned int count)       
 {       
     assert((dest != NULL) && (src != NULL));       
  while (count --)       
     {       
         *(char *) dest = *(char *) src;       
  if (* (char *) src == (char) c)       
  return ((char *)dest + 1);       
         dest = (char *) dest + 1;       
         src = (char *) src + 1;       
     }       
  return NULL;       
 }   

    11、memcmp

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 int memcmp(const void *s, const void *t, unsigned int count)       
 {       
     assert((s != NULL) && (t != NULL));       
  while (*(char *) s && *(char *) t && *(char *) s == *(char *) t && count --)       
     {       
         s = (char *) s + 1;       
         t = (char *) t + 1;       
     }       
  return (*(char *) s - *(char *) t);       
 }  

    12、memmove

[cpp] view plaincopy

  1. //@big:    
  2. //要处理src和dest有重叠的情况,不是从尾巴开始移动就没问题了。    
  3. //一种情况是dest小于src有重叠,这个时候要从头开始移动,    
  4. //另一种是dest大于src有重叠,这个时候要从尾开始移动。    
代码语言:javascript
AI代码解释
复制
 void *memmove(void *dest, const void *src, unsigned int count)       
 {      
     assert(dest != NULL && src != NULL);      
  char* pdest = (char*) dest;      
  char* psrc = (char*) src;      
  
  //pdest在psrc后面,且两者距离小于count时,从尾部开始移动. 其他情况从头部开始移动     
  if (pdest > psrc && pdest - psrc < count)       
     {      
  while (count--)       
         {      
             *(pdest + count) = *(psrc + count);      
         }      
     } else 
     {      
  while (count--)       
         {      
             *pdest++ = *psrc++;      
         }      
     }      
  return dest;      
 }    

    13、memset

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 void *memset(void *str, int c, unsigned int count)       
 {       
     assert(str != NULL);       
  void *s = str;       
  while (count --)       
     {       
         *(char *) s = (char) c;       
         s = (char *) s + 1;       
     }       
  return str;       
 }  

三、atoi && itoa

    1、atoi

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 //代码自己所写,不对地方请及时指正,谢谢! 
 //inf用来标记作为判断是否越界 
 //atoiFlag作为是否是正确结果的返回值 
 const __int64 inf = (0x7fffffff);  
 int atoiFlag;  
 int atoi(const char* ch)  
 {  
     ASSERT(ch != NULL);  
     atoiFlag = false;  
  while (*ch == ' ' || *ch == '\t')  
         ch ++;  
  int isMinus = 1;  
  if (*ch == '-')  
     {  
         isMinus = -1;  
         ch ++;  
     }  
  else if (*ch == '+')  
     {  
         ch ++;  
     }  
  //判断非法 
  if (!(*ch <= '9' && *ch >= '0'))  
  return 0;  
  __int64 ans = 0;  
  while (*ch && *ch <= '9' && *ch >= '0')  
     {  
         ans *= 10;  
         ans += *ch - '0';  
  //判断越界 
  if (ans > inf)  
         {  
  return inf;  
         }  
         ch ++;  
     }  
     ans *= isMinus;  
     atoiFlag = true;  
  return (int)ans;  
 }  
  
 //如何使用 
 int main()  
 {  
  char a[100];  
  while (scanf("%s", a) != EOF)  
     {  
  int ans = atoi(a);  
  if (atoiFlag)  
             printf("%d\n", ans);  
  else if (ans == inf)  
             puts("The data of crossing the line");  
  else 
             puts("Not is a integer");  
     }  
  return 0;  
 }  

    2、itoa

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 #include <stdlib.h>  
 #include <stdio.h>  
 char *myitoa(int num,char *str,int radix);  
 int main()   
 {   
  int number = -123456;   
  char string[25];   
     myitoa(number, string, 16);   
     printf("integer = %d string = %s\n", number, string);   
  return 0;   
 }   
 /* 实现itoa函数的源代码 */ 
 char *myitoa(int num,char *str,int radix)   
 {    
  /* 索引表 */ 
  char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";   
     unsigned unum; /* 中间变量 */ 
  int i=0,j,k;   
  /* 确定unum的值 */ 
  if(radix==10&&num<0) /* 十进制负数 */ 
     {   
         unum=(unsigned)-num;   
         str[i++]='-';   
     }   
  else unum=(unsigned)num; /* 其他情况 */ 
  /* 逆序 */ 
  do 
     {   
         str[i++]=index[unum%(unsigned)radix];   
         unum/=radix;   
     }while(unum);   
     str[i]='\0';   
  /* 转换 */ 
  if(str[0]=='-') k=1; /* 十进制负数 */ 
  else k=0;   
  /* 将原来的“/2”改为“/2.0”,保证当num在16~255之间,radix等于16时,也能得到正确结果 */ 
  char temp;   
  for(j=k;j<=(i-k-1)/2.0;j++)   
     {   
         temp=str[j];   
         str[j]=str[i-j-1];   
         str[i-j-1]=temp;   
     }   
  return str;   
 }   

四、kmp  &&  quicksort

    1、kmp

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 void getNext(const char* p, int next[])  
 {  
     next[0] = -1;  
  int index = 0;  
  int p_l = strlen(p);  
  for (int i=1; i<p_l; i++)  
     {  
         index = next[i-1];  
  while (index >= 0 && p[index+1] != p[i])  
         {  
             index = next[index];  
         }  
  if (p[index+1] == p[i])  
         {  
             next[i] = index + 1;  
         }  
  else 
         {  
             next[i] = -1;  
         }  
     }  
 }  
  
 int kmp(const char* t, const char* p)  
 {  
  const int t_l = strlen(t);  
  const int p_l = strlen(p);  
  int Next = new int[p_l + 1];  
     getNext(p, Next);  
  int p_index = 0, t_index = 0;  
  
  int cnt = 0;  
  
  while (p_index < p_l && t_index < t_l)  
     {  
  if (t[t_index] == p[p_index])  
         {  
             t_index ++;  
             p_index ++;  
         }  
  else if (p_index == 0)  
         {  
             t_index ++;  
         }  
  else 
         {  
             p_index = Next[p_index-1] + 1;  
         }  
  if (p_index == p_l)  
         {  
             cnt ++;  
             p_index = Next[p_index-1] + 1;  
         }  
     }  
  delete[] Next;  
  return cnt;  
 }  

    2、quicksort

[cpp] view plaincopy

代码语言:javascript
AI代码解释
复制
 #include <stdio.h> 
 #include <stdlib.h> 
 #include <time.h> 
  
 int partion(int a[], int p, int r)  
 {  
     srand((unsigned)time(NULL));  
  int e = rand()%(r-p+1)+p;  
  int tmp = a[e];  
     a[e] = a[r];  
     a[r] = tmp;  
  int x = a[r];  
  int i, j;  
     i = p;  
  for (j=p; j<r; j++)  
     {  
  if (a[j] <= x)  
         {  
             tmp = a[i];  
             a[i] = a[j];  
             a[j] = tmp;  
             i ++;  
         }  
     }  
     tmp = a[r];  
     a[r] = a[i];  
     a[i] = tmp;  
  return i;  
 }  
  
 void QuickSort(int a[], int p, int r)  
 {  
  if (p < r)  
     {  
  int q = partion(a, p, r);  
         QuickSort(a, p, q-1);  
         QuickSort(a, q+1, r);  
     }  
 }  
  
 int main()  
 {  
  int a[] = {1,2,3,-1,5,-9,10,33,0};  
     QuickSort(a, 0, 8);  
  for (int i=0; i<9; i++)  
     {  
         printf("%d\t", a[i]);  
     }  
  return 0;  
 }  
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014年12月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
最强AI芯片英伟达H200深夜发布,Llama2-70B推理提速90%,2024年二季度发货
英伟达在 2023 年全球超算大会(SC2023)上发布了目前世界上最强的 AI 芯片 H200。
机器之心
2023/11/15
5730
最强AI芯片英伟达H200深夜发布,Llama2-70B推理提速90%,2024年二季度发货
老黄深夜炸场,世界最强AI芯片H200震撼发布!性能飙升90%,Llama 2推理速度翻倍,大批超算中心来袭
不仅如此,这两款芯片还是互相兼容的。这意味着,使用H100训练/推理模型的企业,可以无缝更换成最新的H200。
新智元
2023/11/14
5060
老黄深夜炸场,世界最强AI芯片H200震撼发布!性能飙升90%,Llama 2推理速度翻倍,大批超算中心来袭
最强AI芯片英伟达H200发布:HBM容量提升76%,大模型性能提升90%!
11月14日消息,英伟达(Nvidia)于当地时间13日上午在 “Supercomputing 23”会议上正式发布了全新的H200 GPU,以及更新后的GH200 产品线。
芯智讯
2023/11/16
1.2K0
最强AI芯片英伟达H200发布:HBM容量提升76%,大模型性能提升90%!
碾压H100!英伟达GH200超级芯片首秀MLPerf v3.1,性能跃升17%
刚刚,MLCommons发布了MLPerf v3.1版本更新,并加入了两个全新基准:LLM推理测试MLPerf Inference v3.1,以及存储性能测试MLPerf Storage v0.5。
新智元
2023/09/19
4180
碾压H100!英伟达GH200超级芯片首秀MLPerf v3.1,性能跃升17%
算力之战,英伟达再度释放AI“炸弹”
近日,在计算机图形学顶会SIGGRAPH 2023现场,英伟达再度释放深夜“炸弹”,大模型专用芯片迎来升级版本。
科技云报道
2023/08/18
2510
算力之战,英伟达再度释放AI“炸弹”
最强大模型训练芯片H200发布!141G大内存,AI推理最高提升90%,还兼容H100
作为首款搭载HBM3e内存的GPU,内存带宽也从3.35TB/s提升至4.8TB/s,提升43%。
量子位
2023/11/15
1.3K0
最强大模型训练芯片H200发布!141G大内存,AI推理最高提升90%,还兼容H100
对于英伟达的 GH200 ,你可能有些误解 !
NVIDIA GH200 可能是目前市面上最容易被误解的产品之一。同时在阅读相关文章后,我们认识到,对于 NVIDIA 推出的这款极具创新性的产品,可能还需要给大家提供一个基础性的介绍。
通往ICT之路
2024/09/14
5100
对于英伟达的 GH200 ,你可能有些误解 !
英伟达生成式AI超级芯片GH200,两倍H100算力,黄仁勋:它会疯狂推理
当地时间 8 月 8 日,英伟达 CEO 黄仁勋在计算机图形学顶会 SIGGRAPH 2023 上发布了专为生成式 AI 打造的下一代 GH200 Grace Hopper 平台,并推出了 OVX 服务器、AI Workbench 等一系列重磅更新。
机器之心
2023/09/08
6070
英伟达生成式AI超级芯片GH200,两倍H100算力,黄仁勋:它会疯狂推理
英伟达DGX SuperPOD超级计算解决方案
DGX SuperPOD是英伟达推出的一种高度集成的超级计算解决方案,旨在为企业和研究机构提供高性能的人工智能计算能力。这种解决方案允许用户快速构建和部署大规模的GPU集群,以应对复杂的AI和机器学习挑战。
用户7353950
2024/11/23
6740
英伟达DGX SuperPOD超级计算解决方案
英伟达推出最强AI芯片:首发HMB3e,大模型运行能力提升3.5倍!
早在今年5月29日,AI芯片大厂英伟达(NVIDIA) CEO黄仁勋就在COMPUTEX 2023展前发布会上,正式发布了升级版的GH200 Grace Hopper超级芯片,旨在助力开发面向生成式AI语言应用、推荐系统和数据分析工作负载的巨型、下一代模型。
芯智讯
2023/09/07
5020
英伟达推出最强AI芯片:首发HMB3e,大模型运行能力提升3.5倍!
英伟达吞噬世界!新架构超级GPU问世,AI算力一步提升30倍
「这不是演唱会。你们是来参加开发者大会的!」老黄出场时,现场爆发出了巨大的欢呼声。
机器之心
2024/03/19
4350
英伟达吞噬世界!新架构超级GPU问世,AI算力一步提升30倍
全新“核弹”!英伟达B200发布:2080亿个晶体管,FP4算力高达40PFlops!
当地时间3月18日,人工智能(AI)芯片龙头厂商英伟达在美国加州圣何塞召开了GTC2024大会,正式发布了面向下一代数据中心和人工智能应用的“核弹”——基于Blackwell架构的B200 GPU,将在计算能力上实现巨大的代际飞跃,预计将在今年晚些时候正式出货。同时,英伟达还带来了Grace Blackwell GB200超级芯片等。
芯智讯
2024/03/19
4K0
全新“核弹”!英伟达B200发布:2080亿个晶体管,FP4算力高达40PFlops!
老黄携「超级GPU」炸场!E级AI超算性能飞升,买越多越划算,谷歌微软Meta抢先试用
随后,便祭出大杀器——「超级GPU」 GH200,并宣布谷歌云、Meta和微软将率先获得GH200。
AiCharm
2023/06/07
6290
老黄携「超级GPU」炸场!E级AI超算性能飞升,买越多越划算,谷歌微软Meta抢先试用
老黄发布最强AIGC芯片!内存容量暴增近50%,可运行任意大模型,“生成式AI的iPhone时刻已来”
在计算机图形学顶会SIGGRAPH上,老黄宣布了英伟达最新的超级芯片NVIDIA DGX GH200 Grace Hopper。
量子位
2023/09/08
4450
老黄发布最强AIGC芯片!内存容量暴增近50%,可运行任意大模型,“生成式AI的iPhone时刻已来”
英伟达B200打破摩尔定律!老黄顺便公开GPT-4的秘密
时隔两年,英伟达官宣新一代Blackwell架构,为AI带来30倍推理加速。定位直指“新工业革命的引擎” 。
量子位
2024/03/20
2690
英伟达B200打破摩尔定律!老黄顺便公开GPT-4的秘密
老黄狂拼CPU!英伟达掏出800亿晶体管显卡,外加世界最快AI超算Eos
---- 新智元报道   编辑:编辑部 【新智元导读】「拼装」CPU,4纳米显卡,世界最快AI超算,还有游戏开发者的元宇宙。这次,老黄的百宝箱里都有啥? 今天,老黄穿着他的皮衣又来了! 3月22日晚,英伟达GTC 2022开幕。 虽然没有了那个熟悉的厨房,但这次的阵仗反而更加豪华。 英伟达用Omniverse把新总部从内到外渲染了一遍! 800亿个晶体管的Hopper H100 随着拔地而起的平台,英伟达推出了为超算设计的最新AI显卡Hopper H100。 相比于「只有」540亿个晶体管的前辈A
新智元
2022/03/24
9400
【AI系统】GPU 架构回顾(从2018年-2024年)
2018 年 Turing 图灵架构发布,采用 TSMC 12 nm 工艺,总共 18.6 亿个晶体管。在 PC 游戏、专业图形应用程序和深度学习推理方面,效率和性能都取得了重大进步。相比上一代 Volta 架构主要更新了 Tensor Core(专门为执行张量/矩阵操作而设计的专门执行单元,深度学习计算核心)、CUDA 和 CuDNN 库的不断改进,更好地应用于深度学习推理。RT Core(Ray Tracing Core)提供实时的光线跟踪渲染,包括具有物理上精确的投影、反射和折射,更逼真的渲染物体和环境。支持 GDDR6 内存,与 GDDR5 内存相比,拥有 14 Gbps 传输速率,实现了 20%的的效率提升。NVLink2.0 支持 100 GB/s 双向带宽,使特定的工作负载能够有效地跨两个 GPU 进行分割并共享内存。
用户11307734
2024/11/27
7070
给英伟达1.6万亿个晶体管,它就能承托全球互联网流量
大数据文摘授权转载自AI科技评论 作者:包永刚 英伟达(Nvidia)一年一度的GTC大会如期而至,两年一更新的GPU架构Hopper也正式亮相。 今年,NVIDIA创始人兼CEO黄仁勋在英伟达新总部大楼发布了一系列新品,从新架构GPU H100,到Grace CPU 超级芯片,再到汽车、边缘计算的硬件新品,以及全面的软件更新。 英伟达的全新发布再次向外界宣告,英伟达不止是一家芯片公司,而是全栈计算公司。他们正在加强其在AI、汽车等领域的领导力,同时也在努力占领下一波AI浪潮以及元宇宙的先机。 当然,作为一
大数据文摘
2022/03/24
5510
囤 H100 的都成了大冤种!英伟达发布最新 AI 芯片 H200:性能提升 2 倍,成本下降 50%
周一,半导体行业巨头英伟达发布了新一代人工智能芯片 H200,旨在为各种 AI 模型提供训练和部署支持。
深度学习与Python
2023/11/18
4910
囤 H100 的都成了大冤种!英伟达发布最新 AI 芯片 H200:性能提升 2 倍,成本下降 50%
英伟达B200成本约6000美元,售价或高达4万美元!
3月20日消息,据CNBC报道,英伟达(Nvidia)CEO黄仁勋在接受其采访时表示,英伟达计划以 3 万至 4 万美元的价格出售用于 AI 和 HPC 工作负载的全新Blackwell GPU B200。不过,这只是一个大概的价格,因为英伟达更倾向于销售面向数据中心的整体解决方案,而不仅仅是芯片或加速卡本身。与此同时,Raymond James 分析师认为英伟达 B200 芯片的硬件成本约为 6,000 美元。
芯智讯
2024/03/26
6820
英伟达B200成本约6000美元,售价或高达4万美元!
推荐阅读
最强AI芯片英伟达H200深夜发布,Llama2-70B推理提速90%,2024年二季度发货
5730
老黄深夜炸场,世界最强AI芯片H200震撼发布!性能飙升90%,Llama 2推理速度翻倍,大批超算中心来袭
5060
最强AI芯片英伟达H200发布:HBM容量提升76%,大模型性能提升90%!
1.2K0
碾压H100!英伟达GH200超级芯片首秀MLPerf v3.1,性能跃升17%
4180
算力之战,英伟达再度释放AI“炸弹”
2510
最强大模型训练芯片H200发布!141G大内存,AI推理最高提升90%,还兼容H100
1.3K0
对于英伟达的 GH200 ,你可能有些误解 !
5100
英伟达生成式AI超级芯片GH200,两倍H100算力,黄仁勋:它会疯狂推理
6070
英伟达DGX SuperPOD超级计算解决方案
6740
英伟达推出最强AI芯片:首发HMB3e,大模型运行能力提升3.5倍!
5020
英伟达吞噬世界!新架构超级GPU问世,AI算力一步提升30倍
4350
全新“核弹”!英伟达B200发布:2080亿个晶体管,FP4算力高达40PFlops!
4K0
老黄携「超级GPU」炸场!E级AI超算性能飞升,买越多越划算,谷歌微软Meta抢先试用
6290
老黄发布最强AIGC芯片!内存容量暴增近50%,可运行任意大模型,“生成式AI的iPhone时刻已来”
4450
英伟达B200打破摩尔定律!老黄顺便公开GPT-4的秘密
2690
老黄狂拼CPU!英伟达掏出800亿晶体管显卡,外加世界最快AI超算Eos
9400
【AI系统】GPU 架构回顾(从2018年-2024年)
7070
给英伟达1.6万亿个晶体管,它就能承托全球互联网流量
5510
囤 H100 的都成了大冤种!英伟达发布最新 AI 芯片 H200:性能提升 2 倍,成本下降 50%
4910
英伟达B200成本约6000美元,售价或高达4万美元!
6820
相关推荐
最强AI芯片英伟达H200深夜发布,Llama2-70B推理提速90%,2024年二季度发货
更多 >
LV.0
这个人很懒,什么都没有留下~
目录
  • 一、写在前面
  • 二、stl模板函数
    •     1、strcpy
    •     2、strncpy
    •     3、strcmp
    •     4、strcat
    •     5、strlen
    •     6、strstr
    •     7、strncat
    •     8、strncmp
    •     9、memcpy
    •     10、memccpy
    •     11、memcmp
    •     12、memmove
    •     13、memset
  • 三、atoi && itoa
    •     1、atoi
    •     2、itoa
  • 四、kmp  &&  quicksort
    •     1、kmp
    •     2、quicksort
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场