修改记录:
********************************************/
说明:摷蛞枋鰯一项描述本文件的目的和功能等。撔薷募锹紨是修改日志列表,每条修改记录应包括修改日期、修改者及修改内容简述。
<规则5> 函数头部应进行注释,列出:函数的目的、功能、输入参数、输出参数、修改日志等。
形式如下:
/*************************************************
函数名称:
简要描述: // 函数目的、功能等的描述
输入: // 输入参数说明,包括每个参数的作用、取值说明及参数间关系,
输出: // 输出参数的说明, 返回值的说明
修改日志:
*************************************************/
对一些复杂的函数,在注释中最好提供典型用法。
<规则6> 仔细定义并明确公共变量的含义、作用、取值范围及使用方法。
在对变量声明的同时,应对其含义、作用、取值范围及使用方法进行注释说明,同时若有必要还应说明与其它变量的关系。明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等。
示例:
/* SCCP转换时错误代码 */
/* 全局错误代码,含义如下 */ // 变量作用、含义
/* 0 - 成功 1 - GT 表错误 2 -GT 错误 其它值- 未使用 */ // 变量取值范围
<规则7> 对指针进行充分的注释说明,对其作用、含义、使用范围、注意事项等说明清楚。
在对指针变量、特别是比较复杂的指针变量声明时,应对其含义、作用及使用范围进行注释说明,如有必要,还应说明其使用方法、注意事项等。
示例:
/* 学生记录列表的头指针 */
/* 当在此模块中创建该列表时,该头指针必须初始化, */
/* 这样可以利用GetListHead()获得这一列表。*/ //指针作用、含义
/* 该指针只在本模块使用,其它模块通过调用GetListHead()获取*/
/* 当使用时必须保证它非空 */ //使用范围、方法
STUDENT_RECORD *pStudentRecHead;
<规则8> 对重要代码段的功能、意图进行注释,提供有用的、额外的信息。并在该代码段的结束处加一行注释表示该段代码结束。
示例:
/* 可选通道的组合 */
if ((gsmBCIe31->radioChReq >= DUAL_HR_RCR)
&& (gsmBCIe32->radioChReq >= DUAL_HR_RCR))
{
gsmBCIe31->radioChReq = FR_RCR;
gsmBCIe32->radioChReq = FR_RCR;
}
else if ((gsmBCIe31->radioChReq >= DUAL_HR_RCR)
&& (gsmBCIe32->radioChReq == FR_RCR) )
{
gsmBCIe31->radioChReq = FR_RCR;
}
else if ((gsmBCIe31->radioChReq == FR_RCR)
&& (gsmBCIe32->radioChReq >= DUAL_HR_RCR))
{
gsmBCIe32->radioChReq = FR_RCR;
}
/* 本块结束 ( 可选通道组合 ) */
********************************************/
说明:摷蛞枋鰯一项描述本文件的目的和功能等。撔薷募锹紨是修改日志列表,每条修改记录应包括修改日期、修改者及修改内容简述。
<规则5> 函数头部应进行注释,列出:函数的目的、功能、输入参数、输出参数、修改日志等。
形式如下:
/*************************************************
函数名称:
简要描述: // 函数目的、功能等的描述
输入: // 输入参数说明,包括每个参数的作用、取值说明及参数间关系,
输出: // 输出参数的说明, 返回值的说明
修改日志:
*************************************************/
对一些复杂的函数,在注释中最好提供典型用法。
<规则6> 仔细定义并明确公共变量的含义、作用、取值范围及使用方法。
在对变量声明的同时,应对其含义、作用、取值范围及使用方法进行注释说明,同时若有必要还应说明与其它变量的关系。明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等。
示例:
/* SCCP转换时错误代码 */
/* 全局错误代码,含义如下 */ // 变量作用、含义
/* 0 - 成功 1 - GT 表错误 2 -GT 错误 其它值- 未使用 */ // 变量取值范围
<规则7> 对指针进行充分的注释说明,对其作用、含义、使用范围、注意事项等说明清楚。
在对指针变量、特别是比较复杂的指针变量声明时,应对其含义、作用及使用范围进行注释说明,如有必要,还应说明其使用方法、注意事项等。
示例:
/* 学生记录列表的头指针 */
/* 当在此模块中创建该列表时,该头指针必须初始化, */
/* 这样可以利用GetListHead()获得这一列表。*/ //指针作用、含义
/* 该指针只在本模块使用,其它模块通过调用GetListHead()获取*/
/* 当使用时必须保证它非空 */ //使用范围、方法
STUDENT_RECORD *pStudentRecHead;
<规则8> 对重要代码段的功能、意图进行注释,提供有用的、额外的信息。并在该代码段的结束处加一行注释表示该段代码结束。
示例:
/* 可选通道的组合 */
if ((gsmBCIe31->radioChReq >= DUAL_HR_RCR)
&& (gsmBCIe32->radioChReq >= DUAL_HR_RCR))
{
gsmBCIe31->radioChReq = FR_RCR;
gsmBCIe32->radioChReq = FR_RCR;
}
else if ((gsmBCIe31->radioChReq >= DUAL_HR_RCR)
&& (gsmBCIe32->radioChReq == FR_RCR) )
{
gsmBCIe31->radioChReq = FR_RCR;
}
else if ((gsmBCIe31->radioChReq == FR_RCR)
&& (gsmBCIe32->radioChReq >= DUAL_HR_RCR))
{
gsmBCIe32->radioChReq = FR_RCR;
}
/* 本块结束 ( 可选通道组合 ) */