handlecom.h

来自「一个简单的词法分析程序。是编译原理的部分课程设计。因为时间有限。未能完成全部。如」· C头文件 代码 · 共 66 行

H
66
字号
/*=============================================
**             2005-8-24					**
**			  识别注释行	 				**
**			 lizhu zhang					**
=============================================*/
/*=============================================
**函数用能:判断该行是否为注释(注释只能在一行)
**参数说明:[in]pString:接受传入的字符串
**		   [out]pErrMesg:返回错误信息.
**返回值  : -1,为注释或空行;0,不是注释;i,注释行出错
**===========================================*/
int FHandleCom(const char *pString,char *pErrMesg)
{
	char word[2048];
	strcpy(word,pString);
	//======================
	//列计数
	int i = 0;
	if(word[i]=='/')
	{
		i++;
		//注释行为"//"形式
		if(word[i]=='/')
		{
			return -1;
		}
		//注释行为"/*.......*/"形式
		if(word[i]=='*')
		{
			i++;
			while(word[i]!='\0'&&word[i]!='*')
				i++;
			if(word[i]=='\0')
			{
				strcpy(pErrMesg,"注释行可能不是正确的结束!");
				return i+1;
			}
			else
			{
				//遇到了“*”,查看下一个字符
				i++;
				//注释行正常结束
				if(word[i]=='/'&&word[i+1]=='\0')
					return -1;
				else
				{
					strcpy(pErrMesg,"注释行可能不是正确的结束!");
					return i+2;	
				}

			}

		}
		else
		{
			strcpy(pErrMesg,"注释行可能不是正确的开始!");
			return i+1;
		}
			
	}
	else
		if (word[i]=='\0')
			return -1;
		else
			return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?