亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? codescandlg.cpp

?? 本軟件是實現一個詞法分析器
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
// CodeScanDlg.cpp : implementation file
//

#include "stdafx.h"
#include "CodeScan.h"
#include "CodeScanDlg.h"
#include<fstream.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
char *key[]={"asm","auto","bool","break","case","catch","char","const","close","continue",
             "default","do","double","else","enum","extern","false","float","for","friend",
			 "goto","if","int","long","register","return","short","signed","sizeof","static",
			 "struct","switch","typedef","this","main","throw","typedef","virtual","cin","cout",
              "union","unsigned","void","volatile","while","new","delete","endl","open",
			"class","define","ifdef","ifndef","endif","error","include"};   

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCodeScanDlg dialog

CCodeScanDlg::CCodeScanDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CCodeScanDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCodeScanDlg)
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CCodeScanDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCodeScanDlg)
	DDX_Control(pDX, IDC_LIST2, m_ListBox);
	DDX_Control(pDX, IDC_EDIT1, m_edit);
	DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CCodeScanDlg, CDialog)
	//{{AFX_MSG_MAP(CCodeScanDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_BN_CLICKED(IDC_BUTTON1, OnOpenFile)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCodeScanDlg message handlers

BOOL CCodeScanDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here
	Init();
    OnInitailListCtrl();
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CCodeScanDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CCodeScanDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CCodeScanDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

void CCodeScanDlg::OnOpenFile() 
{
	// TODO: Add your control notification handler code here
	int count=0;
	try 
	{ 
//	    CString str("",10000);//這是做為存放打開文件名和路徑的字符串空間10000這個值的設置就覺得有些不妥當 
	    CFileDialog openfile(true,NULL,NULL, 
	    OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,"All Files(*.*)|*.*|",AfxGetMainWnd()); 
//	    openfile.m_ofn.lpstrFile=str.GetBuffer(10000); 
//		openfile.m_ofn.nMaxFile=10000; 
//		openfile.m_ofn.lStructSize=sizeof(openfile.m_ofn); 
//		CString pathname("",MAX_PATH); 
		CFileStatus status; 
	    openfile.DoModal(); 
		POSITION mPos=openfile.GetStartPosition(); 
	    while(mPos!=NULL){ 
		pathname=openfile.GetNextPathName(mPos); 
	//	CFile::GetStatus(pathname,status); 
  //  	this->m_showpath.InsertString(count++,pathname); //把包括路徑在內的文件名寫到一個list控件里
	   } 
	} 
	catch (CException* e) 
	{ 
		AfxMessageBox(_T("打開文件出錯了!")); 
		e->Delete(); 
	} 
	OnScan();

}

void CCodeScanDlg::Init()
{ 
    pathname="";
	m_ListBox.InsertString(0,"    ");
    m_ListBox.InsertString(1,"    ");
	m_ListBox.InsertString(2,"    壓縮文件被存   ");
	m_ListBox.InsertString(3,"    在當前文件夾   ");
	m_ListBox.InsertString(4,"    DebugTar.cpp   ");
	m_ListBox.InsertString(5,"       文件里      ");
    m_ListBox.InsertString(6,"     ");
    m_ListBox.InsertString(7,"     ");
	m_ListBox.InsertString(8,"    班級:05本4   ");
	m_ListBox.InsertString(9,"    姓名:邱名州  ");
	m_ListBox.InsertString(10,"  學號:20052102424   ");
}

void CCodeScanDlg::OnScan() 
{
	// TODO: Add your control notification handler code here
	m_ListCtrl.DeleteAllItems();
	char ch;//暫時保留單字符
	char* word=new char[10000];//暫時保留字
	char space[2]=" ";
	int i=0;
	bool flag=0;//用于標識是否為指針
	ifstream fs(pathname,ios::nocreate|ios::in);
    GetDlgItem(IDC_EDIT1)->SetWindowText(pathname);//打印路徑名
	//在當前文件建立一個“debugtar.cpp”
	char szFileNames[100];
	CString strName;
	//得到當前路徑
	DWORD dwLen = GetModuleFileName(NULL, szFileNames, sizeof(szFileNames));
	for(DWORD offset=dwLen; offset>=0; offset--)
	{
	   if(szFileNames[offset] == '\\')
	   {
		szFileNames[offset] = 0;
		break;
	   }
	}
	strName = szFileNames;
	//建立壓縮文件名為Debugtar.cpp
	strName=strName+"tar.cpp";

    ofstream of(strName);
    if(!fs)
	{
		delete []word;
		AfxMessageBox("打不開該文件");
        return ;
	}
	fs.get(ch);
	while(ch!=EOF)
	{
		i=0;
		//刪除空格、換行、回車
		if((ch=='\t')||(ch=='\n')||(ch==' '))
		{
			fs.get(ch);
		}
		//以字符為開頭字符串
		else if((ch>='a')&&(ch<='z')||(ch>='A')&&(ch<='Z')||ch=='_')
		{
			word[i++]=ch;
			fs.get(ch);
			while((ch>='a')&&(ch<='z')||(ch>='A')&&(ch<='Z')||(ch>='0')&&(ch<='9')||(ch=='.'))
			{
				word[i++]=ch;
				fs.get(ch);
			}
			//頭文件情況
			if(word[i-1]=='h'&&word[i-2]=='.')
			{
				word[i]='\0';
				of.write(word,strlen(word));
				n=m_ListCtrl.GetItemCount();
				m_ListCtrl.InsertItem(n,word);
		    	m_ListCtrl.SetItemText(n,1,"關鍵字");
			//	fs.get(ch);
			}
			//關鍵字或表示符情況
			else
			{ 
				word[i]='\0';
				of.write(word,strlen(word));
			    flag=KeyWord(word);	
				if(flag==1)
				of.write(space,1);
			}
		}
		//以數字為開頭字符串
		else if((ch>='0')&&(ch<='9'))
		{
			while((ch=='.')||(ch>='0')&&(ch<='9'))
			{
				word[i++]=ch;
				fs.get(ch);
			}
			word[i]='\0';
			of.write(word,strlen(word));
			//AfxMessageBox(word);
            //of.write(space,1);
			Num(word);
		}
		else 
		{
			n=m_ListCtrl.GetItemCount();
			switch(ch)
			{
			//判斷是除號還是解釋符 
			case '/':
			   word[i++]=ch;
               fs.get(ch);
               if((ch=='/')||(ch=='*'))//如果是解釋
               {
				   word[i++]=ch;
				   // cout<<ch;     			 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产精品一区二区| 制服丝袜av成人在线看| 国产精品久久久久久久久免费樱桃| 日韩av在线播放中文字幕| 欧美日本韩国一区| 五月婷婷综合在线| 91精品婷婷国产综合久久竹菊| 日韩高清在线一区| 日韩精品专区在线影院观看| 久色婷婷小香蕉久久| 精品剧情在线观看| 国产九九视频一区二区三区| 国产女人水真多18毛片18精品视频 | 亚洲不卡一区二区三区| 欧美剧在线免费观看网站| 男女男精品视频| 国产视频一区不卡| 91麻豆国产自产在线观看| 亚洲一区二区美女| 精品国产乱码久久| 99国产一区二区三精品乱码| 亚洲成人黄色影院| 久久亚洲一级片| 一本一道久久a久久精品| 天天操天天色综合| 中文子幕无线码一区tr| 精品视频在线免费观看| 国产精品亚洲视频| 亚洲一区在线电影| 久久久久久**毛片大全| 欧美三级蜜桃2在线观看| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲精品视频观看| 精品av综合导航| 欧美亚日韩国产aⅴ精品中极品| 久久福利资源站| 一区二区三区产品免费精品久久75| 日韩视频一区二区三区在线播放| 99热精品国产| 精品夜夜嗨av一区二区三区| 中文字幕一区免费在线观看| 日韩欧美成人一区| 欧洲国产伦久久久久久久| 蜜桃久久av一区| 亚洲一卡二卡三卡四卡五卡| 久久久青草青青国产亚洲免观| 91成人免费在线视频| 成人性生交大片免费看中文| 亚洲bt欧美bt精品| 亚洲日本在线天堂| 国产农村妇女毛片精品久久麻豆 | 国产一二精品视频| 亚洲国产一区二区三区青草影视| 欧美国产精品中文字幕| 日韩免费视频一区| 欧美色图片你懂的| 成人丝袜高跟foot| 国产大陆精品国产| 狠狠色综合色综合网络| 日韩精品久久久久久| 亚洲夂夂婷婷色拍ww47| 国产精品久久久久久亚洲毛片| 日韩欧美激情一区| 欧美精品三级在线观看| 91黄色在线观看| 91婷婷韩国欧美一区二区| 国产精品 日产精品 欧美精品| 日本一不卡视频| 日韩av在线发布| 天天综合色天天综合色h| 亚洲你懂的在线视频| 国产精品久久99| 国产欧美一区二区精品久导航| 欧美成人猛片aaaaaaa| 91麻豆精品91久久久久同性| 3d成人动漫网站| 欧美一区二区在线观看| 欧美日韩成人在线| 91麻豆精品久久久久蜜臀| 欧美精品在欧美一区二区少妇| 欧美性受xxxx黑人xyx性爽| 91浏览器入口在线观看| 91色九色蝌蚪| 日本韩国精品在线| 在线精品视频一区二区| 欧美伊人精品成人久久综合97| 色婷婷精品大视频在线蜜桃视频| 日本韩国欧美一区| 欧美日本一区二区| 91精品国产福利在线观看| 欧美变态tickle挠乳网站| 精品毛片乱码1区2区3区| 国产午夜精品久久| 亚洲欧美一区二区在线观看| 亚洲精品日韩一| 亚洲va韩国va欧美va| 麻豆精品在线播放| 国产精品中文字幕一区二区三区| 国产精品香蕉一区二区三区| 99热国产精品| 欧美曰成人黄网| 欧美va日韩va| 国产精品乱码一区二区三区软件 | 91免费观看视频| 欧美写真视频网站| 欧美一级国产精品| 国产喂奶挤奶一区二区三区| 亚洲免费观看高清完整| 天天色天天爱天天射综合| 国产精品自拍在线| 色综合久久久久久久久| 欧美一级片在线看| 国产亚洲视频系列| 亚洲专区一二三| 国产在线一区观看| 色先锋aa成人| 日韩欧美一二三| 中文字幕一区不卡| 美女精品自拍一二三四| 99久久伊人久久99| 69av一区二区三区| 亚洲丝袜另类动漫二区| 麻豆成人在线观看| 91高清在线观看| 久久先锋资源网| 亚洲中国最大av网站| 粉嫩aⅴ一区二区三区四区五区| 精品国产乱码久久久久久久 | 国产精品国产自产拍高清av王其| 亚洲影院久久精品| 国产成人精品免费一区二区| 欧美日韩精品电影| 国产精品欧美综合在线| 日韩av电影免费观看高清完整版 | 精品国产1区2区3区| 依依成人精品视频| 国产精品1024| 日韩欧美精品三级| 亚洲国产成人porn| 本田岬高潮一区二区三区| 91精品国产91热久久久做人人| 亚洲欧美一区二区三区极速播放| 麻豆精品在线播放| 欧美精选在线播放| 亚洲女女做受ⅹxx高潮| 风间由美一区二区三区在线观看| 91精品啪在线观看国产60岁| 一区二区高清在线| 99久久久久免费精品国产 | 免费成人在线观看视频| 日本久久一区二区三区| 国产日产亚洲精品系列| 久久国产精品无码网站| 6080亚洲精品一区二区| 一区二区三区欧美| 99国产精品久久久久久久久久久| 久久久夜色精品亚洲| 蜜桃视频第一区免费观看| 7878成人国产在线观看| 亚洲高清免费观看高清完整版在线观看 | 欧美肥胖老妇做爰| 一区二区三区久久久| 99久久精品国产麻豆演员表| 国产日韩欧美综合一区| 国产乱色国产精品免费视频| 久久综合久久综合亚洲| 狠狠色伊人亚洲综合成人| 精品久久国产字幕高潮| 美腿丝袜亚洲综合| 日韩一区二区免费在线电影 | 亚洲一区国产视频| 欧美最新大片在线看| 亚洲综合成人在线视频| 欧美日韩国产高清一区二区三区 | 久久国产福利国产秒拍| 日韩亚洲国产中文字幕欧美| 天堂va蜜桃一区二区三区| 91精品久久久久久久99蜜桃| 日本欧美肥老太交大片| 日韩精品一区二区三区在线观看| 美脚の诱脚舐め脚责91| 欧美精品一区二区久久久| 国模一区二区三区白浆| 欧美国产一区视频在线观看| 成人午夜在线播放| 亚洲免费观看高清| 欧美日韩大陆在线| 精品一区二区三区免费播放| 久久久电影一区二区三区| 成人免费视频一区| 一区二区三区四区国产精品| 欧美精品tushy高清| 捆绑调教美女网站视频一区| 国产三级一区二区三区| 色婷婷av一区二区| 日本大胆欧美人术艺术动态| 久久精品人人做人人爽97| 99re热这里只有精品免费视频 | 日韩欧美国产小视频| 国产一区二区三区精品欧美日韩一区二区三区|