1

如何将项目 win32 控制台应用程序转换为 C++ Windows 窗体?这是我的 win32 控制台代码,但我想将其转换为 C++ Windows 窗体。

#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<string>
#include<iostream>

using namespace std;

const char TAB='\t';
char varlook;
char s[100];
char name[10];




char str[100],str1[100],str2[100],str3[100],str4[100],var[100];
    int i=0,l,l1,j=0,k=0,d=0;   
    int m=0;
    char keyword[100][100]={"int","float","char","double","if","else","for","while","do","auto","break","case","const",
                            "switch","continue","enum","extern","goto","short","register","return","sizeof","static",
                            "struct","typedef","union","void","while","signed","unsigned","default"};
void main(void)
{
gets(str);
while(str[i]!='\0')
{
while(isspace(str[i]))
i++;
if(isalpha(str[i]))
{
k=0;
while(isalnum(str[i]))
{
str1[k]=str[i];
i++;
k++;
}
str1[k]='\0';
l=0;
while(j<100)
{
if (strcmp(str1,keyword[j])==0)
{
l=1;
break;
}
j++;
}
if(l==1)
{
printf("\n   %s    ERROR- it is keyword ",str1);
break;
}
else
{
printf("\n   %s    Valid Identifier ",str1);
break;
l=0;
while(str1[l]!='\0')
{
var[m++]=str1[l++];
}
}
}
else if (isdigit(str[i]))
{
k=0;
while(isalnum(str[i]) || str[i]=='.')
{
if(str[i]=='.')
d++;
str2[k++]=str[i++];
}
printf("\n   %s    ERROR- it is digit ",str2);
break;
}
}

getche();
}

如何将项目 win32 控制台应用程序转换为 C++ Windows 窗体?这是我的 win32 控制台代码,但我想将其转换为 C++ Windows 窗体。

4

1 回答 1

1

您可以使用 C++/CLI

创建一个 CLR 空项目。在 MyForm.cpp 中添加一个名为 MyForm 的新项 Visual C++ / UI / Windows Form

int main()
{
  Project1::MyForm^ dlg = gcnew Project1::MyForm;
  dlg->ShowDialog();
}

然后通过添加一个用于输入的文本框、一个用于评估内容的按钮和一个用于显示结果的标签来设计您的 UI。

为按钮添加一个事件处理程序,当您按下按钮时读取文本框的内容并通过将其放入标签框中来显示结果。

这将为您提供一个准系统程序,但至少它为您提供了一个快速框架。

我建议您使用更 C++ 的方式来指定关键字,例如使用 std::vector 或 std::map - 让事情变得更容易。

于 2013-11-13T12:14:05.860 回答