关于 c++

来源:百度知道 编辑:UC知道 时间:2024/06/15 10:15:56
回答该函数相关问题
函数名称:
功能描述:
输入参数:
输出参数:
返回值:
void TPA_vFUNC(cont UINT8 *pucIn,UINT16 uiLen,INT8 *pcOut)
{
INT16 i;
for(i=0;i<uiLen;i++,pcOut++)
{
*pcOut=((i& 0x01)?(*pucIn++& 0x0f):(*pucIn>>4));
*pcOut+='0';
}
*pcout=0;
}
还请各位高手不吝赐教~~~
如何来判断输入输出呢?

关于怎么鉴别输入还是输出参数,是没有什么标准的,大致上什么参数进函数时和出去时状态没有发生改变那他就是输入,否则是输出。输入参数一般只做读操作,所以大多有const修饰,见到用这个修饰的就是输入参数了。上面这些都是对于像指针参数或按地址引用类参数而言的,如果是像uiLen这样的赋值引用,那就一定是输入。

函数名称: TPA_vFUNC

功能描述: 将字符串pucIn中的数据以低四位在前的形式存入pcOut中,并将pcOut中的数据调整为可见字符。其保存过程的通项公式为:
pcOut[n]=pucIn[n/2]&0f+48 (n=0,2,4,6,...,n<uiLen);//取pucIn相应单元的低四位
pcOut[n]=pucIn[n-1/2]&f0+48 (n=1,3,5,7,...,n<uiLen););//取pucIn相应单元的高四位

输入参数:cont UINT8 *pucIn,UINT16 uiLen
输出参数: INT8 *pcOut
返回值:无

我觉得整个过程是求一个数的16进制数:
*pucIn++& 0x0f //结果是 该数%16 ,就是除以16取余;

*pucIn>>4 //结果是 该数/16 , 就是整除16 ;

我也是一个初学者,所以也只是一知半解,不对别骂我哦:)