ПРОБЛЕМА С КОМПИЛЯТОРОМ C / ПОЖАЛУЙСТА, ПОМОГИТЕ МНЕ [закрыто]

Мой первый язык - испанский, и я не очень хорошо использую английский, но мне нужна помощь в отладке следующего программного кода, так как он вызывает ошибку при компиляции.

CODE :

#include "stdio.h"

int main(int argc, char *argv[])
{
    int edad[tope], estatura[tope], rut[tope];
    int i;
    FILE * direccion_de_memoria_del_csv;

    for (i = 0; i<tope; i++)
    {
        printf("=== PERSONA %d ===\n", i);
        printf("ingrese edad?");
        scanf("%d", &edad[i]);
        printf("ingrese estatura ?");
        scanf("%d", &estatura[i]);
        printf("ingrese rut ?");
        scanf("%d", &rut[i]);
    }

    /*Nota: c:/tmp/ de existir en el disco*/
    direccion_de_memoria_del_csv = fopen("C:/tmp/datos.csv", "w");
    fprintf(direccion_de_memoria_del_csv, "edad,estatura,rut\n");
    for (i = 0; i < tope; i++)
    {
        fprintf(direccion_de_memoria_del_csv, "%d,%d,%d\n", edad[i], estatura[i], rut[i]);
    }
    fclose(direccion_de_memoria_del_csv);
    return 0;
}

ОШИБКА:

   Taller.c:6:11: error: 'tope' undeclared (first use in this function)
      int edad[tope], estatura[tope], rut[tope];
               ^~~~
    Taller.c:6:11: note: each undeclared identifier is reported only once for each function it appears in

ВЫПОЛНИТЬ НА КОНСОЛЕ С КОМАНДОЙ gcc Taller.c -o Taller

-2
задан 17 August 2018 в 14:23

1 ответ

Вы не определили tope. При инициализации массивов и также при пробежке для цикла, компилятор не знает что tope и поэтому не может определить размер массивов. Установите его на постоянное целое число (перед инициализацией массивов),

const int tope = 42

или просто непосредственно вставленный в целое число вместо tope.

@CentaurusA Извините за прямое представление комментария как ответ. Это казалось правильным сначала.

2
ответ дан 28 October 2019 в 03:22

Другие вопросы по тегам:

Похожие вопросы: