Witam,
mam problem pisząc kod z odcinka 10. W linijce która zawiera zapis:
tablica = new int[ile];
wyskakuje błąd mówiący, że nie może skonwertować z 'int *' do 'int'. Występuje to dla kodu nie używającego wskaźnika do obliczeń. Dla ułatwienia podaję cały kod:
#include <iostream>
#include "time.h"
#include "cstdlib"
using namespace std;
int ile;
clock_t start, stop;
double czas;
int main()
{
cout<<"Ile liczb w tablicy:"<<endl;
cin>>ile;
int tablica;
tablica = new int[ile];
start=clock();
for(int i=0; i<ile; i++)
{
tablica[i]=i;
tablica[i]+=50;
}
stop=clock();
czas=(double)(stop-start)/CLOCKS_PER_SEC;
cout<<"Czas zapisu: "<<czas<<" sec."<<endl;
delete [] tablica;
return 0;
}
Natomiast kiedy linijkę wcześniej oznaczę tablicę jako wskaźnik czyli:
int *tablica;
tablica = new int[ile];
to wszystko jest w porządku. Gdzie leży problem i dlaczego tak się dzieje?