Wątek przeniesiony 2016-11-19 22:28 z C/C++ przez kq.

Tablica o zmiennej ilości elementów

0

Chcialem w VS 2015 stworzyc tablice o ilosc zmiennej i cos nie pyklo ....

#include "stdafx.h"
#include <iostream>
#include <cstdlib>


using namespace std;

int main()
{
	int liczb_y;

	cout << "Ile chcesz wprowadzisz liczb do obliczenia mediany : "; cin >> liczb_y;

	int tablica[liczb_y];

	system("pause");
	return 0;
}
 
1
#include <iostream>

using namespace std;

int main()
{
    int liczby;

    cout << "Ile chcesz wprowadzisz liczb do obliczenia mediany : ";
    cin >> liczby;

    int *tablica = new int[liczby];

    system("pause");
    return 0;
}
0

Oczywiście przed zakończeniem funkcji main wypadałoby zwolnić utworzoną tablicę za pomocą:

delete[] tablica;
3

C++ nie ma VLA (tablic o dynamicznym rozmiarze i automatycznym czasie życia). Zamiast tego użyj std::vector. Rozwiązania z new[] i delete[] nawet nie rozważaj.

1
Tymon882 napisał(a):

Chcialem w VS 2015 stworzyc tablice o ilosc zmiennej i cos nie pyklo ....

#include "stdafx.h"
#include <iostream>
#include <cstdlib>


using namespace std;

int main()
{
	int liczb_y;

	cout << "Ile chcesz wprowadzisz liczb do obliczenia mediany : "; cin >> liczb_y;

	int tablica[liczb_y];

	system("pause");
	return 0;
}
 
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    std::size_t liczb_y;
    cout << "Ile chcesz wprowadzisz liczb do obliczenia mediany : "; cin >> liczb_y;
    vector<int> tablica(liczb_y);
    cout << "rozmiar: " << tablica.size() << '\n';
} 

system("pause"); jest zbędne. Wystarczy uruchomić ctrl + F5.
<tt>#include "stdafx.h"
#include <cstdlib> </tt>
w tym przypadku również.

1 użytkowników online, w tym zalogowanych: 0, gości: 1