[发明专利]一种字符串的复制方法、装置及可读存储介质及计算设备在审
申请号: | 202110162279.3 | 申请日: | 2021-02-05 |
公开(公告)号: | CN112506591A | 公开(公告)日: | 2021-03-16 |
发明(设计)人: | 冉攀峰 | 申请(专利权)人: | 北京鼎石纵横科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F9/38 |
代理公司: | 北京鼎承知识产权代理有限公司 11551 | 代理人: | 柯宏达;夏华栋 |
地址: | 100086 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字符串 复制 方法 装置 可读 存储 介质 计算 设备 | ||
1.一种字符串的复制方法,其特征在于,包括:
获取用于复制的源字符串,以及二进制表示的复制次数;
初始化目标字符串的地址空间,将所述源字符串写入所述目标字符串的地址空间的开始位置,设置一个初始值为0的迭代计数器,设置一个初始值为目标字符串的开始位置和所述源字符串的长度相加所获得的位置的位置变量;
从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值,每次获取一个位的数值之后,包括:计算所述源字符串的长度乘以2的迭代计数器当前取值的幂次方的结果得到复制长度,将所述目标字符串的从头开始的字节数为所述复制长度的内容复制至所述位置变量所指向的位置,所述位置变量自加所述复制长度;如果获取的位的数值为1,将所述目标字符串的从头开始的字节数为所述复制长度的内容复制至所述位置变量所指向的位置,所述位置变量自加所述复制长度;将所述迭代计数器自加1;
输出所述目标字符串。
2.如权利要求1所述的方法,其特征在于,从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值,包括:
对所述二进制表示的复制次数执行若干次逻辑右移1位的操作,直至所述复制次数不大于0,每执行一次逻辑右移一位的操作之前,获取所述二进制表示的复制次数的最低位的数值。
3.如权利要求1所述的方法,其特征在于,获取用于复制的源字符串,以及二进制表示的复制次数之前,方法还包括:
获取复制次数;
判断所述复制次数是否为0,且确定所述复制次数不为0;
其中,当确定所述复制次数为0时,设置目标字符串为空字符串,输出所述目标字符串;
以及,
从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值之前,还包括:
判断所述复制次数是否为1,且确定所述复制次数不为1;
其中,当确定所述复制次数为1时,输出所述目标字符串。
4.一种字符串的复制方法,其特征在于,包括:
获取用于复制的源字符串,以及二进制表示的复制次数;
初始化目标字符串的地址空间,将所述源字符串写入所述目标字符串的地址空间的开始位置,设置一个初始值为0的迭代计数器,设置一个初始值为目标字符串的开始位置和所述源字符串的长度相加所获得的位置的位置变量;
从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值;每获取一个位的数值之后,包括:计算所述源字符串的长度乘以2的迭代计数器当前取值的幂次方的结果得到复制长度;如果获取的位的数值为0,将所述目标字符串的从头开始的字节数为所述复制长度的内容复制至所述位置变量所指向的位置,所述位置变量自加所述复制长度;如果获取的位的数值为1,将所述目标字符串的从头开始的字节数为所述复制长度的内容复制至所述位置变量所指向的位置,所述位置变量自加所述复制长度,再将所述目标字符串的从头开始的字节数为所述复制长度的内容复制至所述位置变量所指向的位置,所述位置变量自加所述复制长度;将所述迭代计数器自加1;
输出所述目标字符串。
5.如权利要求4所述的方法,其特征在于,从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值,包括:
对所述二进制表示的复制次数执行若干次逻辑右移1位的操作,直至所述复制次数不大于0,每执行一次逻辑右移一位的操作之前,获取所述二进制表示的复制次数的最低位的数值。
6.如权利要求4所述的方法,其特征在于,获取用于复制的源字符串,以及二进制表示的复制次数之前,方法还包括:
获取复制次数;
判断所述复制次数是否为0,且确定所述复制次数不为0;
其中,当确定所述复制次数为0时,设置目标字符串为空字符串,输出所述目标字符串;
以及,
从所述二进制表示的复制次数的最低位到取值为1的最高位的右边一位,依次获取每个位的数值之前,还包括:
判断所述复制次数是否为1,且确定所述复制次数不为1;
其中,当确定所述复制次数为1时,输出所述目标字符串。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京鼎石纵横科技有限公司,未经北京鼎石纵横科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110162279.3/1.html,转载请声明来源钻瓜专利网。