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

C++ Prosta alokacja pamięci

Aruba Cloud - Virtual Private Server VPS
+1 głos
191 wizyt
pytanie zadane 23 stycznia 2021 w C i C++ przez Parex Nowicjusz (200 p.)

Napisałem prosty program, w którym tworze tablice dynamiczną 10 elementową i sprawdzam adresy elementu 0 i 1. Po skompilowaniu pokazuje mi adresy danych elementow ale wyskakuje komunikat "Wskazniki.exe has triggered a breakpoint." a kiedy chce zamknąć konsole ona jakby "wisiała" i zamyka się z opoznieniem. Korzystam z VS 2019 i VS Code.

#include <iostream>

using namespace std;


int main()
{
    int* tablica;
    tablica = new int[10];
    cout << tablica << endl;
    tablica ++;
    cout << tablica << endl;
    delete[] tablica;

}

 

2 odpowiedzi

+1 głos
odpowiedź 23 stycznia 2021 przez Michałełe Nałogowiec (25,600 p.)
Problemem jest inkrementacja tego wskaźnika tablica - stwórz drugi wskaźnik, który będzie wskazywał na to samo.

Dzieje się tak, ponieważ inkrementujesz adres tego pierwszego - później przy próbie dealokacji jest to inna tablica, a pamięć cieknie (pierwszy element). Ewentualnie możesz po prostu wypisać &tablica[0] i &tablica[1].
komentarz 23 stycznia 2021 przez Parex Nowicjusz (200 p.)
Dzikuję bardzo, z drugim wskaznikiem jest juz wszystko ok.
0 głosów
odpowiedź 23 stycznia 2021 przez Landu Stary wyjadacz (11,880 p.)

Nie możesz inkrementować tablicy

 

#include <iostream>

using namespace std;


int main()
{
    int *tablica;
    tablica = new int[10];

    cout << &tablica[0] << endl;
    cout << &tablica[1] << endl;

    delete[] tablica;

    return 0;
}

 

Podobne pytania

0 głosów
1 odpowiedź 386 wizyt
pytanie zadane 6 czerwca 2022 w C i C++ przez kacper1445 Mądrala (5,050 p.)
0 głosów
1 odpowiedź 229 wizyt
0 głosów
1 odpowiedź 694 wizyt
pytanie zadane 1 maja 2020 w C i C++ przez Hepsko Początkujący (260 p.)

93,327 zapytań

142,323 odpowiedzi

322,396 komentarzy

62,657 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...