引用引用第1樓yamqq于2014-07-16 18:59發(fā)表的 :#include "stdafx.h" char *fnFCS(const char *pstr,int iCount,char *pFCS) //定義FCS校驗函數(shù) { if(pstr==NULL||pFCS==NULL) //如果指針為null return NULL; //返回NULL char ch=*pstr; //定義字符變量并賦初值 for(int i=1;i<iCount;i++) //循環(huán)iCount次 { ch^=*(pstr+i); //異或運算 } char ct=ch>>4; //取異或結(jié)果的高四位 if(ct>9) //轉(zhuǎn)為ASCII碼 ct+='A'-10; else ct+='0'; *pFCS=ct; ct=ch&0x0F; //取異或結(jié)果的低四位 if(ct>9) //轉(zhuǎn)為ASCII碼 ct+='A'-10; else ct+='0'; *(pFCS+1)=ct; return pFCS; //返回校驗值 } int main(int argc, char* argv[]) //定義主函數(shù) { char c,str[100]=""; //定義變量 int i=0; //定義變量 char jyTemp[2]; //定義變量 printf("請輸入要校驗的字符串:\n"); //要求輸入字符串 while((str=getchar())!='\n') //輸入字符串,直到遇到回車符 { i+=1; fnFCS(str,i,&jyTemp[0]); //調(diào)用FCS計算函數(shù) } printf("以上字符串的FCS校驗是:'%c%c'。\n",jyTemp[0],jyTemp[1]); //輸出結(jié)果 return 0; }
主辦單位:上海明控機電科技有限公司
本站所有內(nèi)容均為網(wǎng)友自行發(fā)布,不代表網(wǎng)站立場,如有爭議請與管理員聯(lián)系
工控人家園是公益論壇,不銷售任何資料軟件,不銷售會員和積分
刪貼、投訴電話:13816792706
遵守法律,文明發(fā)言 滬ICP備10210768號-2 滬公網(wǎng)安備31010802001143號