1

私は基本的なプログラムを行っていたので、この質問をします.コンパイルすると警告が表示され、「警告: '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;
}
4

2 に答える 2

4

これは、前の行の前方宣言の後にセミコロンを置くのを忘れたためです。

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

関数宣言では配列サイズとパラメーター名は無視されるため、以下の宣言は同等であることに注意してください。

int escapicua(char[]);
于 2013-08-10T22:48:10.347 に答える
2
int escapicua(char Vec[T]);
                       // ^

;after 関数の前方宣言を忘れました。

于 2013-08-10T22:48:02.543 に答える