1 Star 0 Fork 8

黑皮/Xipkpublib_Update

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
XipCutHanzi.c 1.31 KB
一键复制 编辑 原始数据 按行查看 历史
suitianmou 提交于 2016-07-14 09:04 . mofidiy some bug
/**********************************************************************
* 函 数 名: XipCutHanzi
* 函数功能: 从上一次截取后的起始位置截取len长字符。
* 如果截取len长字符后最后为半个汉字即向前串一个字符。
* 作者/时间: zhangl
* 2016/3/17
*
* 参数:
* 输入: msg 输入字符串。
len 截取的长度。
* 输出: rmsg 返回字符串.
* 返回: qs1 截取后的起始位置
* 全部截取后返回0
*
* 修改历史:
*
********************************************************************/
#include "kernel/syspub.h"
#include "kernel/xipcmstc.h"
int XipCutHanzi(char *msg ,int len, char *rmsg)
{
int i,j,k,m,n,p;
if(len<0)
{
return 0;
}
static int qs1=0;
m = qs1;
p = len;
j=0;k=0;n=0;
if ( m > 0 && m >= strlen(msg) )
{
rmsg[0] = 0 ;
return 0;
}
if(strlen(msg+m)<len)
{
p=strlen(msg+m);
}
for ( i=m;i<m+p;i++)
{
k = msg[i];
if ( k <0 || k > 128 )
{
n++;
if ( n%2 == 0 )
j=0;
else
j=1;
}
else
{
n=0;
j=0;
}
}
if ( j == 1 )
{
p--;
}
strncpy(rmsg,msg+m,p);
qs1=m+p;
if(qs1==strlen(msg))
{
return 0;
}
return qs1;
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/LaoGun/Xipkpublib_Update.git
git@gitee.com:LaoGun/Xipkpublib_Update.git
LaoGun
Xipkpublib_Update
Xipkpublib_Update
master

搜索帮助