?? analy_func.cpp
字號:
#include<iostream.h>
#include "constant_define.h"
int isReserve(const char* arr[],char strToken[],int);//是否是保留字
bool isInclude(char array[],char cCode ,int iLength);//判斷某數組中是否包含某字符
////////////////判斷是否是字母
bool isLetter(char cCode)
{
char array[]="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
int iLength=sizeof(array);
return isInclude(array,cCode,iLength);
}
////////////////判斷是否是數字
bool isDigit(char cCode)
{
char array[]="0123456789";
int iLength=sizeof(array);
return isInclude(array,cCode,iLength);
}
bool isOperator(char cCode)//判斷是否是運算符
{
char array[]="+-*/=<>!";
int iLength=sizeof(array);
return isInclude(array,cCode,iLength);
}
bool isSeparator(char cCode)//判斷是否是間隔符
{
char array[]=",;{}()";
int iLength=sizeof(array);
return isInclude(array,cCode,iLength);
}
bool isInclude(char array[],char cCode,int iLength)//判斷某數組中是否包含某字符
{
bool isInclude=false;
for(int i=0;i<iLength;i++)
{
if(cCode==array[i])
{
isInclude=true;
}
}
return isInclude;
}
void InitStr(char sStr[],int iLength)//初始化數組
{
int i=0;
while(sStr[i]!='\0' && i<iLength)
{
sStr[i]='\0';
i++;
}
}
void ConCat(char strToken[], char ch)//連接字符
{
int i=0;
while(strToken[i]!='\0')
{
i++;
}
strToken[i]=ch;
}
int Reserve(char strToken[])//查找保留字編碼
{
int iValue=2;
int iLen_K=sizeof(arrKeyWord)/sizeof(arrKeyWord[0]);//取字符數組長度
int iLen_O=sizeof(arrOperator)/sizeof(arrOperator[0]);
int iLen_S=sizeof(arrSeparator)/sizeof(arrSeparator[0]);
if(isReserve(arrKeyWord,strToken,iLen_K)==1)
{
iValue=1;
};
if(isReserve(arrOperator,strToken,iLen_O)==1)
{
iValue=4;
};
if(isReserve(arrSeparator,strToken,iLen_S)==1)
{
iValue=5;
};
return iValue;
}
int isReserve(const char* array[],char strToken[],int iLength)//字符匹配
{
int j=0;
int iValue=0;
for(int i=0;i<iLength;i++,j=0)
{
while((array[i][j]!='\0') & (strToken[j]!='\0'))
{
if(array[i][j]!=strToken[j]) break;
j++;
};
if((array[i][j]=='\0') & (strToken[j]=='\0'))
{
iValue=1;
break;
}
}
return iValue;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -