在C语言中,有下列函数,怎么调用该方法呢?第一个参数和第二个都是必传的吗?麻烦写个调用代码
//全角转半角
void sbc_to_dbc(char *sbc, char *dbc)
{
for(; *sbc; ++sbc)
{
if((*sbc & 0xff) == 0xA1 && (*(sbc + 1) & 0xff) == 0xA1) //全角空格
{
*dbc++ = 0x20;
++sbc;
}
else if((*sbc & 0xff) == 0xA3 && (*(sbc + 1) & 0xff) >= 0xA1 && (*(sbc + 1) & 0xff) <= 0xFE) //ASCII码中其它可显示字符
*dbc++ = *++sbc - 0x80;
else
{
if(*sbc < 0) //如果是中文字符,则拷贝两个字节
*dbc++ = *sbc++;
*dbc++ = *sbc;
}
}
*dbc = 0;
}
//半角转全角
void dbc_to_sbc(char *dbc, char *sbc)
{
for(; *dbc; ++dbc)
{
if((*dbc & 0xff) == 0x20) //半角空格
{
*sbc++ = 0xA1;
*sbc++ = 0xA1;
}
else if((*dbc & 0xff) >= 0x21 && (*dbc & 0xff) <= 0x7E)
{
*sbc++ = 0xA3;
*sbc++ = *dbc + 0x80;
}
else
{
if(*dbc < 0) //如果是中文字符,则拷贝两个字节
*sbc++ = *dbc++;
*sbc++ = *dbc;
}
}
*sbc = 0;
}