C++ [错误预期标识符或';(';之前&&';{&';标记]
我有一个项目,项目中的两个文件分别命名为d2.c.和student.txtC++ [错误预期标识符或';(';之前&&';{&';标记],c++,c,C++,C,我有一个项目,项目中的两个文件分别命名为d2.c.和student.txt #include<stdio.h> #include<conio.h> #include<string.h> #include<stdlib.h> #define appendData(); #define data(); #define editRecord(); #define searchRecord(); #define deleteRecord(); int ma
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#define appendData();
#define data();
#define editRecord();
#define searchRecord();
#define deleteRecord();
int main(void)
{
struct person
{
char stdNumb [20];
char firstName [20],lastName [20], icPass [20], nationality [20], gender [20], dateOfBirth [20];
char contact [20], address [30];
};
char choice;
while(1)
{
printf("\n============================");
printf("\n MENU");
printf("\n============================");
printf("\n1. ADD");
printf("\n2. SEARCH");
printf("\n3. EDIT");
printf("\n4. DELETE");
printf("\n5. EXIT");
printf("\n============================");
printf("\n\n");
printf("Enter your choice : ");
choice = getche();
switch(choice)
{
case'1' : //call append record
data();
break;
case'2' : //call search record
searchRecord();
break;
case'3' : //edit record
editRecord();
break;
case'4' : //Read all record
deleteRecord();
break;
case'5':
exit(0);
defaut:
printf("ss");
}
}
}
void data()
{
FILE *fp;
struct person obj;
fp=fopen("D:\\data.txt","a");
printf("\n============================");
printf("\n ADD");
printf("\n============================\n\n");
printf("Student Number: ");
scanf("%s",&obj.stdNumb);
}
我无法理解为什么会出现此警告,因为我必须在我的项目的其他文件中使用此结构。文件开头的#define
s会导致这些函数名替换为分号。特别是,此函数名:
#define data();
造成这种情况的原因是:
void data()
{
为此:
void ;
{
这会导致您的错误,因为函数名和括号都丢失,并且添加了不需要的分号。
C和C++中的警告和错误总是指示行号。使用此信息。或者至少在您的问题中指出它是什么。ome将导致堆栈溢出。请尽快阅读页面。若要缩进代码,请选择它,然后使用编辑框上方的{}
按钮将其缩进。确保您的代码缩进的样式或多或少是正统的,最好是空格而不是制表符,并且制表位设置为4(这大致是假定的)在C++中,你可以做<代码>人Obj>;< /COD>而不是<代码> Stutt对象Ob>;<代码>。你的问题是你有“代码”>定义了数据();< /代码>,然后你声明一个函数<代码>无效数据()。。#define
使数据成为一个值仅为;
的宏。你的#define
在这里真的没有什么意义。你应该找一本好书或教程,密切关注它,了解你在写什么,而不是编造东西(比如#define data()
)。
void ;
{