g_Str,szStr,STR结构,的说明

来源:互联网 发布:node sass使用 编辑:程序博客网 时间:2024/06/07 09:21

       g_Str变量是定义的一个全局字符串,它包括使用的全部API函数的名称,以及程序使用的全部字符串。该变量位于文件strings.h中,通过函数memcpy将它拷贝给变量szStr变量,szStr变量是结构体VARS的一个域。 

       全局结构体GS中的STR结构体,与g_St中的字符串是一一对应的。因为szStr和g_Str都是串行保存字符串集合的,所以当把szStr拷贝到STR结构体中的时候,使用的函数是LoadStrings。

void * memcpy(void * dest,const void * src,size_t count)
{
    void *ret=dest;
    while(count--)
    {
        *(char *)dest=*(char *)src;
        dest=(char *)dest+1;
        src=(char *)src+1;
    }
    return (ret);//该返回值不影响结果
}

bool BOAPI FWK_LoadStrings(GS *gs,void *dest,char *src)
{
    if(dest==NULL)||src==NULL)
         return false;
    FCT *fct=&(gs->fct);
    DWORD *p=(DWORD *)dest;
    while(*src!=0)
    {
         src+=fct->strlen(src)+1;
         p++;
    }
    return true;
}

unsigned int BOAPI C_strlen(const char *str)
{
     const char * eos=str;
     while(*eos++);
     return((int)(eos-str+1));
}

原创粉丝点击