Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Program kopiujący C-string z tablicy do innej tablicy.

Ostatnio zmodyfikowano 2016-09-25 22:58
Autor Wiadomość
mateczek
» 2016-09-25 21:33:45
dalej źle! przepisujesz wskaźniki nie kopiujesz danych wyciek pamięci !
P-152023
latajacaryba
Temat założony przez niniejszego użytkownika
» 2016-09-25 21:44:02
Ale właśnie o przepisywanie mi chodziło. Chciałem się spytać, czy tok myślenia w komentarzach był poprawny. Miały wyjść 3 linijki tego samego "ala ma kota"
P-152026
mateczek
» 2016-09-25 22:00:49
jeśli o taki efekt ci chodziło by jedną tablicę w kosmos wystrzelić to dobrze :P zjawisko takie nazywa się wyciekiem pamięci w tym przypadku objawia się tym, że zamiast dwóch tablic masz jedną tablicę do której odwołują się dwa wskaźniki. Do drugiej tablicy tracisz dostęp na wieki.
https://pl.wikipedia.org/wiki/Wyciek_pami%C4%99ci


C/C++
#include <iostream>
#include<cstring>
using namespace std;
int main()
{
    char * imie1 = new char[ 20 ];
    char * imie2 = new char[ 20 ];
    imie1 = imie2; //aj waj!!!!!!
   
    strcpy( imie1, "pawel" );
    cout << imie1 << " " << imie2 << endl;
    strcpy( imie2, "monika" );
    cout << imie1 << " " << imie2 << endl;
    delete[] imie1;
    delete[] imie2; //tu boliiiiiiiiiiiiii naprawdę !!!!!!!!
}
P-152029
latajacaryba
Temat założony przez niniejszego użytkownika
» 2016-09-25 22:58:02
znaczy oczywiście zdaję sobie sprawę, że tablica na którą wskazywał wskaźnik została utracona, bo nie można się do niej inaczej odwołac, niż poprzez wskaźnik, który teraz "ustawiliśmy" na inny adres. Przy tym przykładzie chodziło mi bardziej nie o samo działanie a tok rozumowania ujęty w komentarze.
Dzięki za wytłumaczenie :D
P-152034
1 2 « 3 »
Poprzednia strona Strona 3 z 3