if else语句是错误的还是我的编译器错了?

时间:2014-11-14 15:02:10

标签: if-statement wait

现在好了,我不知道任何人都可以解决这个问题。我可能是初学者,但这是我知道我不应该得到的。

1>c:\users\kevin\documents\visual studio 2010\projects\movie\movie\p2 project.cpp(57): error C2143: syntax error : missing ';' before '{'
1>c:\users\kevin\documents\visual studio 2010\projects\movie\movie\p2 project.cpp(68): error C2181: illegal else without matching if

这里的部分

int customer_menu(char signup(struct register_ regis))
{ 
    FILE *cni; /* cni means customer necessary info*/
    cni=fopen("login.txt","a+");
    if(cni!=NULL)
    {
        if (regis.category=="customer" )
        /*This is where the compiler say the error is at. Expecting a ';' here?:*/
        {  
            printf("\t\t~>~>~>~>~>~>~>menu~>~>~>~>~>~>~>~>~~ \n");
            printf("\t\t~>~>~>~>~>~>~>~>~>~>~>~>~>>~>~>~>~>~ \n");
            printf("\t\t~>~>~>~>>~>~>~>~>~>~>~>~>~>~>~>~>~>~ \n");
            printf("\t\t~>~>~>~>~>to login~>~>~>~>~>~press 1 \n");
            printf("\t\t~>~>~>~>~>to register~>~>~>~>press 2 \n");
            printf("\t\t~>~>~>~>~>to buy ticket~>~>~>press 6 \n");
            printf("\t\t~>~>~>~>~>to exit~>~>~>~>~>~>press 0 \n");
            printf("\t\t~>~>~>~>~>~>~>~>~>~>~>~>~>>~>~>~>~>~ \n");
            printf("\t\t~>~>~>~>>~>~>~>~>~>~>~>~>~>~>~>~>~>~ \n");
            scanf("%d",&choice);
        }
        else
        {
            int worker_menu(char signup(struct regis));
        }
        fclose(cni);
        /* And illegal use of else without matching if here?*/
    }
    else
    {
         printf("an error occured. please try again\n");
         system("pause");
         system("cls"); 
         char log,reg; desion(reg, log);
     }
 }

在编译器跳过的错误评论之前是否有错误导致如此令人震惊和令人费解的谜团?

1 个答案:

答案 0 :(得分:1)

  

int customer_menu(char signup(struct register_ regis))   {

这不是有效的函数声明。也不清楚如何修复它。你想要这是什么意思?