资源描述:
《单板软件c&c++编程规范1》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《单板软件C/C++编程强制规范》JamesMa类别规则检查方式正确样例错误样例备注1排版规则1-1:待定staticINT32cfsetparity(structtermios*options,INT32i32Parity)staticINT32cfsetparity(structtermios*options,INT32i32Parity)程序块要采用缩进风格编{{options->c_cflag&=~PARENB;/*default,noparity*/options->c_cflag&=~PARENB;/*default,noparity*/写,缩进的空格数为4个。如使用TAB键,
2、TAB键需定义if(i32Parity==1)/*odd*/if(i32Parity==1)/*odd*/为4个空格宽度。{{options->c_cflag
3、=PARENB;options->c_cflag
4、=PARENB;options->c_cflag
5、=PARODD;options->c_cflag
6、=PARODD;}}............}}规则1-2:待定staticBOOLSerial_ParseOpenParams(INCHAR*pSettings,staticBOOLSerial_ParseOpenParams(INCHAR*pSettings,相对独立的程序块之间、
7、变OUTSERIAL_BAUD_ATTR*pAttr)OUTSERIAL_BAUD_ATTR*pAttr){{量说明之后必须加空行。禁CHARszParityBit[2];CHARszParityBit[2];止出现超过30行的程序块。............if((szParityBit[0]=='N')
8、
9、(szParityBit[0]=='n')){if((szParityBit[0]=='N')
10、
11、(szParityBit[0]=='n'))pAttr->nOdd=0;{}pAttr->nOdd=0;elseif((szParityBit[0]=='O')
12、
13、(szParityBi
14、t[0]=='o'))}{pAttr->nOdd=1;elseif((szParityBit[0]=='O')
15、
16、(szParityBit[0]=='o'))}{......pAttr->nOdd=1;}}......}规则1-3:待定if((connect(hSocket,(structSC_SOCKADDR*)&sin,sizeof(sin))==0)if((connect(hSocket,(structSC_SOCKADDR*)&sin,sizeof(sin))==0)
17、
18、一行程序应小于80个字符,
19、
20、(SOCK_ERRNO()==E_INPROGRESS))(SOCK_ERRNO(
21、)==E_INPROGRESS)){{较长的语句也要分成多行书............写,长表达式要在低优先级}}操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。规则1-4:待定if(pPort==NULL)if(pPort==NULL){*pErrCode=ERR_COMM_NO_MEMORY;returnNULL;}不允许把多个短语句写在一{*pErrCode=ERR_COMM_NO_MEMORY;行中,即一行只写一条语句returnNULL;。除变量定义外禁止使用逗}号语句。规则1-5:待定............if、for、do、whil
22、e、casei32Rc=fcntl(hSocket,F_GETFL);i32Rc=fcntl(hSocket,F_GETFL);if(i32NonBlock)、switch、default等语句if(i32NonBlock)i32Rc
23、=O_NONBLOCK;//NOBLOCK自占一行,且if、for、do{else、while等语句的执行语句i32Rc
24、=O_NONBLOCK;//NOBLOCKi32Rc&=~O_NONBLOCK;部分无论多少都要加括号{}}i32Rc=fcntl(hSocket,F_SETFL,i32Rc);。上述关键字前必须增加空else......行。{i32Rc
25、&=~O_NONBLOCK;}i32Rc=fcntl(hSocket,F_SETFL,i32Rc);......规则1-6:待定/*generalerrors*//*generalerrors*/函数或过程的开始、结构的enumERR_CODE_LOG_ENUMenumERR_CODE_LOG_ENUM{{定义及循环、判断、case语ERR_LOG_OK=ERR_OK,//successERR_LOG_OK=ERR_OK