Kod dostaje SEGFAULT
Strona [ 1 ] z 1
| youtube |
08-02-2010 16:12 |
|
|
Cześć Mam kod do wypisywania zawartości wektora 2D: #include <cstdio> #include <vector> #include <algorithm> void printMatrix(std::vector<std::vector<bool> >& matrix) { int i, j; for(i = 0; i < matrix.size(); ++i) { printf("%2d: ", matrix[i].size()); for(j = 0; j < matrix[i].size(); ++j) { printf("%d,", matrix[i][j]); } printf("\n"); } printf("\n"); fflush(stdout); } int main() { std::vector<std::vector<bool> > matrix(10, std::vector<bool>(15, true)); printMatrix(matrix); return 0; } Nie mam pojęcia czemu ale ten kod mi się wysypuje jak zmienie sygnaturę funkcji z: void printMatrix(std::vector<std::vector<bool> >& matrix) na void printMatrix(const std::vector<std::vector<bool> >& matrix) to działa dobrze. Czy ktoś wie co jest nie tak? |
|
|
| MarekR22 |
08-02-2010 17:12 |
|
Użytkownik Status: Offline Dołączył: 26-01-2008 |
tak z ciekawości, a co się stanie jak poprawisz tak: |
|
|
| yygtrtertt |
10-02-2010 19:10 |
|
|
segmentation fault jest najczesciej wtedy gdy jest przekroczenie zakresu jakiegos kontenera: tablicy, wektora itp lub próbujemy przypisac wartosc "pustemu" wskaznikowi (niezainicjowanemu, NULL) |
|
|
|
|
|
Strona [ 1 ] z 1
| 1 użytkownik(ów) przegląda ten temat (1 gości) |
|---|
| (żadnych zarejestrowanych użytkowników) |









