Some STR Fun

Some STR Fun

Some STR Fun
#include 
<
iostream
>

Some STR Fun#include 

<
assert.h
>

Some STR Fun#include 

<
string
>

Some STR Fun

using
 
namespace
 std;
Some STR Fun
Some STR Fun

char
 
*
myStrstr(
const
 
char
*
 src, 
const
 
char
*
 pat)
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun    
char *= (char*)src;
Some STR Fun    
char *= NULL;
Some STR Fun    
char *temp = NULL;
Some STR Fun
Some STR Fun    
if(!*pat)
Some STR Fun        
return (char*)src;
Some STR Fun
Some STR Fun    
while(*p)
ExpandedSubBlockStart.gifContractedSubBlock.gif    
Some STR Fun{

Some STR Fun        temp 
= p;
Some STR Fun        q 
= (char*)pat;
Some STR Fun        
while(*temp && *&& !(*temp  *q))
ExpandedSubBlockStart.gifContractedSubBlock.gif        
Some STR Fun{

Some STR Fun            temp
++;
Some STR Fun            q
++;
Some STR Fun        }

Some STR Fun        
if(!*q)
Some STR Fun            
return p;
Some STR Fun        p
++;
Some STR Fun    }

Some STR Fun
Some STR Fun    
return NULL;
Some STR Fun}


Some STR Fun
Some STR Fun

int
 myStrcmp(
const
 
char
 
*
src, 
const
 
char
 
*
pat)
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun    
int ret = 0;
Some STR Fun    
char *p1 = (char*)src;
Some STR Fun    
char *p2 = (char*)pat;
Some STR Fun
Some STR Fun    
while(*p2 && !(ret = *p1  *p2))
ExpandedSubBlockStart.gifContractedSubBlock.gif    
Some STR Fun{

Some STR Fun        p1
++;
Some STR Fun        p2
++;
Some STR Fun    }

Some STR Fun    
if(ret < 0)
Some STR Fun        
return 1;
Some STR Fun    
if(ret > 0)
Some STR Fun        
return 1;
Some STR Fun
Some STR Fun    
return ret;
Some STR Fun}


Some STR Fun
Some STR Fun

char
*
 myStrcpy(
char
 
*
src, 
const
 
char
 
*
pat)
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun    assert ((NULL 
!= src)&&(NULL != pat));
Some STR Fun    
char* newStr = src;
Some STR Fun    
while((*src++ = *pat++!= \0)
ExpandedSubBlockStart.gifContractedSubBlock.gif    
Some STR Fun{

Some STR Fun        NULL;
Some STR Fun    }

Some STR Fun    
return newStr;
Some STR Fun}


Some STR Fun
Some STR Fun

char
*
 myStrcat(
char
 
*
src, 
const
 
char
 
*
pat)
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun    
char *= src;
Some STR Fun    
while(*p)
ExpandedSubBlockStart.gifContractedSubBlock.gif    
Some STR Fun{

Some STR Fun        p
++;
Some STR Fun    }

Some STR Fun    
while(*p++ = *pat++)
ExpandedSubBlockStart.gifContractedSubBlock.gif    
Some STR Fun{

Some STR Fun        NULL;
Some STR Fun    }

Some STR Fun    
return src;
Some STR Fun}


Some STR Fun
Some STR Fun
ExpandedBlockStart.gifContractedBlock.gif

/**/
/********************abcdef -> efabcde ***************************/

Some STR Fun

char
*
 MoveStr(
char
 
*
src, 
int
 steps)
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun    
int lenth = strlen(src);
Some STR Fun    
char temp[255];
Some STR Fun    strcpy(temp, src 
+ lenth  steps);
Some STR Fun    strcpy(temp 
+ steps, src);
Some STR Fun    
*(temp + lenth) = \0;
Some STR Fun    strcpy(src, temp);
Some STR Fun    
return src;
Some STR Fun}


Some STR Fun
Some STR Fun
Some STR Fun

void
 main()
ExpandedBlockStart.gifContractedBlock.gif

Some STR Fun
{

Some STR Fun}

转载于:https://www.cnblogs.com/jackill/archive/2009/06/06/1497791.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110901.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • NVIC和EXTI

    NVIC和EXTINVIC:NestVectorInterruptController,嵌套中断向量控制器,是用来管理中断嵌套的,核心任务在于其优先级的管理。NVIC给每个中断赋予先占优先级(抢占优先级)和次占优先级(响应优先级)。CM3内核支持256个中断,其中包含了16个内核中断和240个外部中断,并且具有256级的可编程中断设置。但STM32并没有使用CM3内核的全部东西,而是只用了它的一部分,STM

    2022年5月28日
    68
  • python unicode编码转换utf-8编码_不成问题的问题人物解析

    python unicode编码转换utf-8编码_不成问题的问题人物解析Unicode也叫万国码、单一码,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。对于世界上所有的语言文字再unicode中都可以查看到。【汉】字的编码解释官网https://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=6C49unicode编码就是为了统一世界上的编码,有一个统一的规范。但是它还存在一些问题。Unicode的问题需要注意的是,Unicode只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存

    2022年9月30日
    4
  • xshell连接虚拟机步骤_虚拟机网络设置

    xshell连接虚拟机步骤_虚拟机网络设置1、打开虚拟机,查看虚拟机的ip地址2、打开Xshell软件,点击“新建”3、填写属性,输入登录的用户名和密码(或者在填写属性的时候,点击用户身份验证,输入登录用户名和密码)4、连接成功Xshell6版本的链接https://download.csdn.net/download/qq_45130472/12352471…

    2022年9月17日
    2
  • 鼠标滚轮编码器工作原理_速度编码器工作原理

    鼠标滚轮编码器工作原理_速度编码器工作原理鼠标滚轮一旦出现滚动跳动,不连贯,基本都要换,修鼠标会经常遇到,好奇之下想了解一下这个小东西的原理。滚轮一端插在这个转盘里面,我们滚动滚轮时候,转盘被带动旋转,产生脉冲信号,电脑依靠这个信号判断滚轮的旋转方向和速度。我们拆一个机械编码器来看看。就是这个小东西,特别简单有没有,一共就4个零件最左边是铁壳,上面一般会有厂家信息,安装高度,和寿命等比如这个,安装高度10毫米,寿命500万圈。PS:一般普通的鼠标,都是选用安装高度为11mm,但还是要自己量清楚。这里需要注意的是,安装

    2022年9月30日
    0
  • gcc离线安装 ubuntu 不用编译_「ubuntu安装gcc」ubuntu18.04安装gcc详细步骤(附问题集) – seo实验室…[通俗易懂]

    gcc离线安装 ubuntu 不用编译_「ubuntu安装gcc」ubuntu18.04安装gcc详细步骤(附问题集) – seo实验室…[通俗易懂]ubuntu安装gcc首先是下载gcc包,可以在GCC的官方网站http://gcc.gnu.org/下载到各个版本。目前最高版本是gcc-8.2.0。一、在安装gcc前,需要先安装MPFR、GMP和MPCGCC编译需要mpfr和mpc(–>gmp、–>mpfr)库的支持,依次安装这几个库,其中mpfr可直接安装,安装mpc依赖mpfr和gmp库(对版本有要求,建议安装最…

    2022年7月24日
    33
  • 个人网站可以申请微信授权登录吗?

    个人网站可以申请微信授权登录吗?

    2021年10月25日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号