• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dynamiczna alokacja bez wskaźników czy to możliwe?

Object Storage Arubacloud
0 głosów
169 wizyt
pytanie zadane 13 marca 2016 w C i C++ przez KlataMiLata Bywalec (2,120 p.)

Witam, mój znajomy podesłał mi kod do sprawdzenia. W kodzie tym znalazłem bardzo charakterystyczny błąd. 

int a;
cin >> a;
char tab[a][a];

Oczywiście próbował on dynamicznie alokować pamięć. Obiekt a był deklarowany jako obiekt automatyczny. Jednak gdy zwróciłem mu na to uwagę on powiedział że kompilator nie wykrył mu żadnego błędu i wszystko działa jak należy. Używa on CodeBlocks-a. I tutaj moje pytanie. Czy jest możliwe aby taki zapis był poprawny? 

2 odpowiedzi

+2 głosów
odpowiedź 13 marca 2016 przez draghan VIP (106,230 p.)
Taaaa... Działać to działa. GCC pozwala na taki zapis, to jest chyba jedno z jego rozszerzeń. Oficjalnie to jest błąd - rozmiar statycznej tablicy musi być stały i znany na etapie kompilacji, a tutaj tak nie jest.
0 głosów
odpowiedź 13 marca 2016 przez niezalogowany
edycja 13 marca 2016
To jest błąd. Rozmiar tablicy statycznej musi być znany w momencie kompilacji. Sprawdź czy masz ustawione flage -Wpedantic bo powinno ci wyrzucić warning o tym, że to działa tylko pod GCC.
komentarz 13 marca 2016 przez adrian17 Ekspert (344,860 p.)
GCC ostrzega o tym dopiero z -pedantic.

Podobne pytania

+1 głos
2 odpowiedzi 241 wizyt
0 głosów
1 odpowiedź 151 wizyt
pytanie zadane 5 kwietnia 2016 w C i C++ przez Avernis Nałogowiec (27,400 p.)
0 głosów
1 odpowiedź 1,527 wizyt

92,578 zapytań

141,427 odpowiedzi

319,653 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...