面试c语言的小函数

本文详细介绍了C语言中常见的字符串操作函数,包括strcat、strlen、strend和strncpy等。通过具体实现代码展示了如何连接两个字符串、计算字符串长度、判断一个字符串是否是另一个字符串的结尾部分以及如何复制指定长度的字符串。

strcat:

char* strcat(char* s1,char* s2)
{
    char* addr=s1;
    assert(s1!=null&&s2!=null);
    while(*s1)
        s1++;
    while(*s2)
 {
   *s1=*s2;
  }
return addr;
}

函数strend(s,t): 字符串t 出现在字符串s 的尾部,返回1,否则返回0

//////strlen
int strlen(char* p)
{
 int ilen=0;
while(*p)
{
   ilen++;
   p++;
}
 return ilen;
}

////strend : find t in s;
int strend(char*s,char* t)
{
   int slen=strlen(s);
   int tlen=strlen(t);
 if(tlen>slen)return 0;
///各自到达字符串的尾部
while(*s)
   s++;
while(*t)
   t++;
for(;tlen--){
 if(*--t != * --s )return 0;
}
return 1;
}

strncpy(s,t,n) : 将t 中前n 个字符复制s 中。

char * strncpy(char* s,char* t,int n)
{
  char* addr=s;
  if(!strlen(s)||!n)return 0;
  int tlen=strlen(t);
if(!tlen)return 0;
if(tlen<n)n=tlen;

while(*++s);
while(n--)
{
  *s++ =*t++;
}
  return addr;
}

 知识点1. argv 指向字符串数组,数组内容为字符串的指针。第一个指针指向可运行程序文件名,为c 格式字符串。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值