c++ funkcje

A9
  • Rejestracja:około 11 lat
  • Ostatnio:ponad 6 lat
0

Cześć. Co mi daje na początku przypisanie wartości 0 do zmiennych x, y, z???

Kopiuj
#include <iostream>
int pole (int dlugosc, int szerokosc);
using namespace std;

int pole (int a, int b)
{
    return (a*b);
}

int main()
{
int x = 0;
int y = 0;
int z = 0;
cout<<"wpisz x: ";
cin>>x;
cout<<"wpisz y: ";
cin>>y;

z=pole(x,y);
cout<<"pole to: "<<z;


    return 0;
}
 
kq
Moderator C/C++
  • Rejestracja:prawie 12 lat
  • Ostatnio:2 dni
  • Lokalizacja:Szczecin
3

W tym przypadku nic.


A9
  • Rejestracja:około 11 lat
  • Ostatnio:ponad 6 lat
0

Właśnie nie rozumiem po co to napisali w przykładzie w książce. Może potem się dowiem :)

fasadin
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 3 lata
  • Postów:4882
3

w tym przypadku nic, ale jezeli zmienna jest lokalna i jest nie zainicjalizowana to zawiera smieci (jezeli bys nie zainicjalizowal to by zawierala smieci).
Inicjalizacja przy definicja chroni Cie przed pozniejszymi bledami

edytowany 1x, ostatnio: fasadin
twonek
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 2 lata
  • Postów:2500
5

Dodając do tego co inni już napisali.
W tym przypadku nic, ale chodzi o dobry nawyk. Używanie niezainicjalizowanych zmiennych to nie tylko śmieciowe wartości, ale undefined behaviour, czyli program może się wywalić albo robić gorsze rzeczy.

pingwindyktator
Trochę odkopie temat, ale to jest jedna z zalet auto. Nie napiszesz przecież auto x, musisz auto x = 0.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.