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

question-closed tablica dynamiczna-pewna koncepcja

Object Storage Arubacloud
0 głosów
142 wizyt
pytanie zadane 19 marca 2016 w C i C++ przez szymi666 Bywalec (2,020 p.)
zamknięte 19 marca 2016 przez szymi666

Witam.Otóż robię sobie próby przed pierwszym naprawdę grubszym programem w C++ i napotkałem na pewną sytuacje lecz nie za bardzo ją rozumiem

#include<iostream>

using namespace std;

int main()
{
	int z=4;
	string* tab = new string[z];
	tab[0]=3;
	tab[1]=2;
	tab[2]=90;
	tab[3]=48;
	tab[4]=35;
	cout<<tab[z]<<endl;
  return 0;
}

Problem polega na tym że to nie działa nie wiem dlaczego.W moim mózgu choć mało jeszcze doświadczonym w programowaniu to wszystko jakoś układa się w całość jednak najwidoczniej się mylę. 

Z góry dziękuje za wyjaśnienia pozdrawiam.

komentarz zamknięcia: Problem rozwiązany

4 odpowiedzi

+1 głos
odpowiedź 19 marca 2016 przez Fenix Nałogowiec (26,750 p.)
wybrane 19 marca 2016 przez szymi666
 
Najlepsza
z masz równe 4;

a indeksujesz do tablicy o idenksie 4 ale numerze 5, tablice indeksowane są od 0.
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)
jednak gdy skasuję tą tab[4] nadal ma komunikat że program przestał działac
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)
na dodatek program zwraca jakieś ogromne liczby
komentarz 19 marca 2016 przez Fenix Nałogowiec (26,750 p.)
na końcu masz tab[z] odwołujesz się do niezadeklarowanej pamięci + wpisujesz inty do stringów, po co?
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)
jednak te próby dotyczą części tego grubszego projektu gdzie będę losował to właśnie z
1
komentarz 19 marca 2016 przez Fenix Nałogowiec (26,750 p.)
to w wyświetlaniu zmniejsz je o 1, lub stwórz do tego osobną zmienną aby po czasie wiedzieć o co chodzi :P
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)
to działa wielkie dzięki
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)

jednak w tej konfiguracji to już nie działa dlaczego?

words2.open("words.txt");
    int los;
    srand(time(NULL));
    los=rand()%10+1;	
    string* line=new string [los];
     getline(words2,line[los]);
     cout<<line[los-1]<<endl;
 words2.close();

 

+1 głos
odpowiedź 19 marca 2016 przez Mar Cin Dyskutant (8,900 p.)
Deklarujesz tablicę 4 elementową,a próbujesz dodać 5 elementów :)i w ogóle stworzyłeś tablicę stringów,a dodajesz int
+1 głos
odpowiedź 19 marca 2016 przez Adrian1999 Nałogowiec (34,570 p.)
zadeklarowałeś tablicę ciągu znaków i wrzucasz tam liczby, nie dziwie ci się że nie działa daj liczby w "" jak dalej nie działa ustaw int jako stały czyli const int
komentarz 19 marca 2016 przez szymi666 Bywalec (2,020 p.)

niestety po wszystkich zabiegach nadal mam komunikat że program przestał działac

komentarz 19 marca 2016 przez Adrian1999 Nałogowiec (34,570 p.)
Pokaż komunikat?
+1 głos
odpowiedź 19 marca 2016 przez jeremus Maniak (59,720 p.)
1. odwołujesz się poza zakres tablicy z=4 a mozna tylko od 0..3

2. podstawiasz liczby zamiast stringi

Podobne pytania

0 głosów
2 odpowiedzi 784 wizyt
pytanie zadane 1 grudnia 2018 w C i C++ przez four Użytkownik (720 p.)
0 głosów
2 odpowiedzi 519 wizyt
pytanie zadane 4 października 2018 w C i C++ przez uther1455 Nowicjusz (140 p.)
0 głosów
1 odpowiedź 268 wizyt

92,579 zapytań

141,429 odpowiedzi

319,657 komentarzy

61,962 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...