Wypełnianie tablicy n elementowej.

0

Witam
W 7 oraz 10 linii mam oto następujące błędy przy kompilacji:
Jak zmienię n na jakąś naturalną to działa... W czym tkwi problem?

In function 'int main()':|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|7|error: expected ']' before ';' token|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|7|error: expected primary-expression before ']' token|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|7|error: expected ';' before ']' token|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|10|error: expected primary-expression before ';' token|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|10|error: expected ')' before ';' token|
C:\ProgramowanieProjekty\cwicz4zad1tablice\main.c|10|error: expected ';' before ')' token|
||=== Build finished: 6 errors, 0 warnings ===|

W programie:

#include <stdio.h>
#include <stdlib.h>
#define n 100;
int main()
{

    int t[n];
    int i;

    for (i=0; i<n; i++)
    scanf ("%d", &t[i]);

    return 0;
}
0

Po co ten średnik w #define n 100;? Preprocesor wstawia po prostu ten tekst, więc masz: int t[100;]; itd. To powoduje błędy, które widzisz.

0

a co z ustawianiem rozmiaru tablicy ze zmiennej?
czyli wczytujemy jakąś liczbę int, przypisujemy jej wartość do zmiennej n i dopiero po tym deklarujemy tablicę np int tablica[n];?

pytam, bo jedni twierdzą, że tak nie można, inni, że można, wiem tylko tyle, że się da.

0

W C99 (koniecznie) i C11 (implementacja nie jest wymagana) jak najbardziej można, poczytaj o VLA.

0

sorka, ale jestem kompletnie zielony w programowaniu i nie do końca rozumiem.
jeżeli się nie mylę, to chodzi wam o to, że w różnych standardach C jest to lub nie jest dozwolone, tak?

1 użytkowników online, w tym zalogowanych: 0, gości: 1