Cześć, mam problem. Za każdym razem jak dotąd robiłem kilka pętli for w mainie to w każdym forze dawałem int i = 0, działało.
W tym programie muszę dać int i = 0; powyżej wszystkimi FOR'ami aby nie było błędu. Mało tego, dziwne, że jak dam int i = 0 powyżej wszystkimi FOR'ami to mogę dać jeszcze jeden int i = 0 w pierwszym FOR'ze i też działa. Czemu nie działa to kiedy daję int i = 0 w drugim forze gdzie są wi=tabint, wf=tabflo? Niżej kod programu
Chodzi mi o 3 miejsca oznaczone <---------------------------- w kodzie. W książce jedyny "int i = 0" znajdował się w pierwszym forze, w drugim było samo "i=0", no ale nie działa mi tak również.
int main()
{
int i; < -------------------------------------- tu dalem int i bo inaczej nie dziala drugi for
int *wi;
float *wf;
int tabint[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
float tabflo[10];
wf = &tabflo[0]; // ustawienie wskaznika na poczatek tabflo
for(int i=0;i<10;i++) // zaladowanie tabflo wartosciami poczatkowymi czyli 1/10 2/10 3/10 ... 9/10 <----- tu moge dać int i=0, a jest to już wyżej zrobione.
{
*(wf++) = i / 10.0; // to inaczej *wf = i / 10.0; wf++;
}
cout << "Tresc tablic na poczatku\n";
for(i=0,wi=tabint,wf=tabflo; i<10; i++){ // wypisanie tablic <----- o tu nie moge dać int i = 0 takjakby te wi i wf to blokowały
cout << i << ") \t" << *wi << "\t\t\t\t" << *wf << endl;
wi++;
wf++;
}
/************nowe ustawienie wskaznikow**************/
wi = &tabint[5];
wf = tabflo + 2;
/***********wpisanie do tablic kilkua nowych wartosci****/
for(i=0;i<4;i++){
*(wi++)= -222;
*(wf++)= -777.5;
}
cout << "Nowa tresc tablic\n";
wi = tabint;
wf = tabflo;
for(i=0;i<10;i++){
cout << "tabint[" << i << "] = " << *(wi++) << " tabflo[" << i << "] = " << *(wf++) << endl;
}
return 0;}