• 压缩空格的函数以及BCD码与ASCII相互转换函数


    /**
    函数名:zip_space
    功能 :压缩空格的函数
    参数 :
    s 源字符串
    返回值:
    0 成功
    **/

    int zip_space(char *s){
        int i,j;
        int len;
        if(s==NULL || strlen(s)==0)
        {
            return -1;
        }
    
        len=strlen(s);
    
        i=j=0;
        while(s[i]!=''){
            if(s[i]!=' '){
                if(i!=j){
                    s[j]=s[i];
                }
                i++;j++;
            }else{
                i++;
            }
        }
        while(j<i){
            s[j]='';
            j++;
        }
        return(0);
    }
    /*************
    ****************/
    int zip_0a09(char *s, int begin)
    {
        int len=strlen(s);
        int i,j;
        i=j=begin;
        while(s[i]!=''){
            if(s[i]!=0x09 && s[i]!=0x0a){
                if(i!=j){
                    s[j]=s[i];
                }
                i++;j++;
            }else{
                i++;
            }
        }
        if(j<i){
            s[j]='';
        }
        return(j);
    }
    
    
    
    
    /****asc->bcd***/
    int iAscToBcd(char *pcASC,char *pcBCD,int iLength){
        int i;
        for(i=0;i<iLength/2;i++){
            unsigned char ch1,ch2;
            ch1=(unsigned char)pcASC[i*2];
            ch2=(unsigned char)pcASC[i*2+1];
            if(ch1>='a' && ch1<='f')
                ch1=ch1-'a'+0xa;
            else if(ch1>='A' && ch1<='F')
                ch1=ch1-'A'+0xa;
            else
                ch1=ch1-'0';
            if(ch2>='a' && ch2<='f')
                ch2=ch2-'a'+0xa;
            else if(ch2>='A' && ch2<='F')
                ch2=ch2-'A'+0xa;
            else
                ch2=ch2-'0';
            pcBCD[i]=(ch1<<4)|ch2;
        }
        return(0);
    }
    
    
    
    /****bcd->asc***/
    int iBcdToAsc(char *pcBCD,char *pcASC,int iLength){
        int i;
        for(i=0;i<iLength;i++){
            unsigned char ch;
            ch=(unsigned char)pcBCD[i];
            ch=ch>>4;
            if(ch>=10){
                pcASC[2*i]=ch-10+'A';
            }else{
                pcASC[2*i]=ch+'0';
            }
            ch=(unsigned char)pcBCD[i];
            ch=ch &0x0f;
            if(ch>=10){
                pcASC[2*i+1]=ch-10+'A';
            }else{
                pcASC[2*i+1]=ch+'0';
            }
        }
        return(0);
    }
  • 相关阅读:
    Java Stream 去重对象
    CentOS7安装JDK8
    CentOS7安装Tomcat9
    MySQL 8.0 安装
    面相对象7大原则
    Spring Boot MyBatis连接MySQL数据库
    win11右键改回win10风格,win10右键改回win11风格,不用重启
    【转载】NetCore 开发实战(目录整理)
    viewState cookie session _VIEWSTATE
    外部JS得到客户端ID
  • 原文地址:https://www.cnblogs.com/sherlockhomles/p/3211068.html
Copyright © 2020-2023  润新知