这是我的头文件
#include <iostream>
using namespace std;
void DateCheck (const int &XX, const int &YY, const int &ZZZZ)
{
if (XX>=01 && XX<=31 && (YY==1 || YY==3 ||YY==5 ||YY==7 ||YY==8 ||YY==10
||YY==12))
cout<<"DATE ACCECPTABLE";
else if (XX>=01 && XX<=30 && (YY==4 ||YY==6 ||YY==9 ||YY==11))
cout<<"DATE ACCECPTABLE";
else if (XX>=01 && XX<=29 && (YY==2 && ZZZZ%4==0))
cout<<"DATE ACCECPTABLE";
else if (XX>=01 && XX<=28 && (YY==2 && ZZZZ%4!=0))
cout<<"DATE ACCECPTABLE";
else
cout<<"INVALID DATE";
}
这是我C++代码狙击手
#include <iostream>
#include <cstdio>
#include <fstream>
#include <windows.h>
#include "DateCheck.h"
using namespace std;
class Admission
{
struct AdminFormat
{
char Name[30], FName[30], MName[30], Gender[10];
char BG[2],d;
static unsigned int DD, MM, YYYY;
char FOccu[20], MOccu[20], Religion[10];
char OffAddr[100], ResAddr[100], PermAddr[100];
float DistSch;
unsigned int Contact, EmpCode;
int caste, stucat, Class; ///7cast
char Nationality[20];
AdminFormat *next;
}*st;
AdminFormat *F, *R;
public:
Admission ()
{
F=R=NULL;
}
void NewStu (); ///admission of new student
void TransfStu (); ///transfer
void Register (); ///displaying records of students
void Store (); ///storing all records in a binary file
};
void Admission::Register ()
{
Admission ad;
ifstream i;
i.open("Register.dat", ios::app|ios::binary);
while (i.read((char*)&ad, sizeof ad))
{
cout<<"Hello";
}
i.close();
}
我被困在这里,因为我无法弄清楚为什么有一个错误显示对WinMain@16
的未定义引用.如果你们可以调试我的问题,那将是非常好的。我使用Codeblocks IDE和gnu g++编译器制作了脚本。
任何C++程序(带有可执行输出)都需要一个main
函数的起点,对于Windows GUI应用程序来说可能WinMain
函数。所以无论哪种方式,你都需要有一个入口(开始)点到你的程序(没有起点你怎么能开始?
我在您的代码中找不到起点,并且您抱怨它的错误,因此这应该是您问题的根源。
在Windows下,GUI应用程序需要一个函数WinMain
,而控制台应用程序需要一个函数main
。否则操作系统将不知道从哪里开始执行程序(好吧,它比这复杂一些,但这就是你需要知道的全部。
更有用的错误消息是"程序需要入口点(WinMain 或 main)"。