Tablica dwuwymiarowa
Ostatnio zmodyfikowano 2018-02-02 00:44
Zigor36 Temat założony przez niniejszego użytkownika |
Tablica dwuwymiarowa » 2018-02-01 23:32:41 Witajcie, zrobiłem generacje bloku z gwiazdek do tablicy dwumiarowej. Chciałem ją pokazać później za pomocą kolejnych pętli na ekranie. Jednak mój kod ma problem z kompilacją. Z samymi tablicami dwuwymiarowymi nie miałem zbyt wiele wspólnego, robiłem tylko jakieś małe tablice, którym przypisywałem wartość, jak przypisuje je w takiej pętli, trochę mi się to jeszcze miesza. Mam nadzieję na pomoc z waszej strony i dziękuje za każdą odpowiedź w pomocy z tym :) . #include <iostream> using namespace std;
int main() { int w = 15, k = 100; char tab[ w ][ k ]; char gwiazdka = '*'; for( int x = 0; x < w; x++ ) { tab[ x ][ x ] = gwiazdka; for( int y = 0; y < k; y++ ) { tab[ x ][ y ] = gwiazdka; } cout << endl; } for( int x = 0; x < w; x++ ) { cout << tab[ x ][ x ]; for( int y = 0; y < k; y++ ) { cout <<[ x ][ y ]; } cout << endl; } system( "pause" ); }
Tutaj ten błąd kompilacji, nie wiem jeszcze co to są funkcje lambda, ale czytając o nich, stwierdziłem, że żadnych takich nie użyłem... In lambda function: 27 13 [Error] expected '{' before '[' token C In function 'int main()': 27 13 [Warning] lambda expressions only available with -std=c++11 or -std=gnu++11 27 13 [Error] no match for 'operator[]' (operand types are 'main()::<lambda()>' and 'int') |
|
geceves |
» 2018-02-01 23:39:27 Przemyśl dodanie const w: int w = 15, k = 100; char tab[ w ][ k ];
oraz czym się różni: od użytego w innym miejscu |
|
Zigor36 Temat założony przez niniejszego użytkownika |
» 2018-02-01 23:43:50 Ahh tak.. Dosłownie przed chwilą zobaczyłem, że nie dopisałem tam tab.. :) Ogólnie trochę przebudowałem kod i wygląda on teraz tak: #include <iostream> using namespace std;
int main() { int w = 15, k = 100; char tab[ w ][ k ]; char gwiazdka = '*'; for( int x = 0; x < w; x++ ) { for( int y = 0; y < k; y++ ) { tab[ x ][ y ] = gwiazdka; } cout << endl; } for( int x = 0; x < w; x++ ) { for( int y = 0; y < k; y++ ) { cout << tab[ x ][ y ]; } cout << endl; } system( "pause" ); }
I zaraz ogarne coś z tym const |
|
YooSy |
» 2018-02-02 00:44:16 To jest C++ więc te int w = 15, k = 100; powinny być stałe ( const ). Btw: proponuję włączyć w opcjach kompilatora standard C++11 lub wyższy. Mamy rok 2018. |
|
« 1 » |