【问题标题】:Main is usually a function?main 通常是一个函数?
【发布时间】:2013-08-12 14:06:39
【问题描述】:

我做这个问题是因为我在做一个基本程序,当我编译它时有一个警告,它说“警告:'main'通常是一个函数”“然后在同一行中出现语法错误. 我的程序是关于回文的,在西班牙语中我们说“capicua”。 谢谢您的帮助。 我用 C 编程。

int T=10;

int CargarVector(char Vec[T]);
int escapicua(char Vec[T])
int main()
{                            //here is the error!!
    char Vec[T];
    cargarVector(Vec);
    escapicua(Vec);
    return 0;
}
int CargarVector(int Vec[T])
{
    int i=0;
    printf("ingrese letra");
    aux=getche();
    while(aux!='.'&&i<T)
    {
        while(aux<'a'||aux>'Z')
        {
            printf("Error, ingrese letra del Abcdario")
            aux=getche();
        }
        Vec[i]=aux;
        i++;
        printf("ingrese letra");
        aux=getche();
    }
    r=i;
    return 0;
}
int escapicua(char Vec[T])
{
    int i,c;
    for(i=0;i<(T/2),i++)
    {
        if(Vec[i]!=Vec[(T-1)]
           {
               C++
           }
           if(C>0)
            {
                printf("No es capicua");
            }
            else
            {
                printf("Es capicua")
            }

    }
    return 0;
}

【问题讨论】:

  • 首先,它应该是int main( void )int main( ... ),其中... 是来自操作系统的两个参数。
  • 我强烈建议你尽快开始用英文编码。在搜索帮助或提问时,它会有所帮助。一旦你开始在团队中编码,无论如何都无法绕过它。
  • 对不起,我忘了把这些词翻译成西班牙语,我不会再这样做了,你有理由这样做。
  • @JacobPollack:你的意思是int main(void)int main(into argc, char *argv[])... 实际上是函数原型中的一个有效标记,只是不在这个上下文中。

标签: c function compiler-errors syntax-error main


【解决方案1】:
int escapicua(char Vec[T]);
                       // ^

你忘记了函数前向声明后的;

【讨论】:

    【解决方案2】:

    这是因为你忘了在上一行的前向声明后加分号:

    int escapicua(char Vec[T]);
    //           Here ------- ^
    

    请注意,函数声明中忽略了数组大小和参数名称,因此下面的声明将是等效的:

    int escapicua(char[]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-16
      • 2017-05-01
      • 2016-07-14
      • 2021-08-19
      • 2014-04-06
      • 1970-01-01
      相关资源
      最近更新 更多