Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Mam problem i nie mogę go rozwiązać. W ogóle nie ogarniam i mnie wpienia już to. Googluje i wydaje mi się że robie tak jak mi wuja google pokaże i dalej nie działa ;/ help
int ma[10][10],mb[10][10]; int n,m; cout << "podaj rozmiar macierzy [m][n]\n m:"; cin >> m; cout << "n:"; cin >> n; cout << "Macierz a:" << endl; srand ( time(NULL) ); for(int i=1;i<=m;i++) { for(int a=1;a<=n;a++) { **ma[m][n] = rand() % 100; cout << ma[m][n] << "\t"; } cout << endl; } cout << "Macierz b:" << endl; for(int i=1;i<=m;i++) { for(int a=1;a<=n;a++) { mb[m][n] = rand() % 100; cout << mb[m][n] << "\t"; } cout << endl; } suma1(ma,mb,m,n);
oraz funkcja:
void suma1(int **ma, int *mb[10], int x, int y) { int **mc; mc = (int**)malloc(x*sizeof(int)); for(int i = 1; i <=x;i++) { mc[i]=(int*)malloc(y*sizeof(int)); } for(int a=1;a<=x;a++) { for(int b=1;b<=y;b++) { cout << ma[a][b] << "\t"; } cout << endl; } }
i takiego errora mam:
zad4.cpp:83: error: cannot convert 'int** (*)[10]' to 'int**' for argument '1' to 'void suma1(int**, int**, int, int)'
Może ktoś napisać jak ma to wyglądać i dlaczego tak?? Nie ogarniam tych wskaźników do tablic ;/ HELPP
Ostatnio edytowany przez giegiel (2009-04-01 02:48:43)
Offline
void suma1(int ma[][10], int mb[][10], int x, int y) {
1) nie wiem po co ten malloc jak i tak wczesniej masz na sztywno 10x10
2) pozatym tem malloc raczej nie powinien tak wygladac - tablica dwuwymiarowa to wskaznik na wskaznik bo
ma[1][2] jest rozumiane przez kompilator jako *(*(ma + 1)+2) innymi slowy jest to tablica tablic (bedacych jej wierszami)
3) jak chesz sie bawic w dynamiczne tablice 2d to chyba najprosciej w formie splaszczonej czyli
int* mc = malloc(N*M*sizeof(int)); mc[1+2*M]=3;
Ostatnio edytowany przez bercik (2009-04-02 13:48:25)
Offline
Strony: 1