Funkcionisanje promene vrednosti kod tipova podataka

Funkcionisanje promene vrednosti kod tipova podataka

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Kod glasi ovako:

#include <iostream> int main() {    bool vrednostP = true;    std::cout << "P = " << vrednostP << std::endl;    std::cout << "P Nije =  " << !vrednostP << std::endl;    vrednostP = false;    std::cout << "P =  " << vrednostP << std::endl;    std::cout << "P Nije =  " << !vrednostP << std::endl;    return 0; }

Kao što vidite, na početku sam definisao vrednostP kao true i uradio malu logičku strukturu, nakon toga sam je definisao kao false. Sada, pošto u programu imam dva puta definisanu vrednostP (oba puta različito), dali će program pri prikazu vrednosti uzeti zadnju definiciju (false u ovom slučaju) i dali je moguće da unesem da prikaz bude prva vrednost , a da ne pišem ponovo vrednostP = true; ? Primetio sam da je ista stvar i sa ostalim tipovima podataka.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14822
  • Gde živiš: Niš

Program će prikazati ono što se u trenutku prikaza nalazi na memorijskoj lokaciji sa adresom vrednostP.
Dakle, to je jedna memorijska lokacija i u njoj se pamti samo jedan podatak.

Što se prikaza vrednosti tiče, umesto ponovnog definisanja promenljive, u ovom slučaju, možeš samo da napraviš negaciju prethodne. No, ne bih znao kako to ide za C++. Razz



offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Aha znači da stavim onda matica != 99 (!= je za negaciju, ali mislim da to ima i u C).

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14822
  • Gde živiš: Niš

!= je u C-u "nije jednako/različito", odnosno negacija jednakosti. Operator negacije je ! .

offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

Si' mislio na ovo?

bool vrednostP = true; ... vrednostP = !vrednostP; // false ... vrednostP = !vrednostP; // true ... vrednostP = !vrednostP; // false ...

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Napisano: 06 Apr 2013 18:58

Sad sam pronašao način kako to da uradim:

#include <iostream> bool vrednostP = true; int main() {      bool vrednostP = false;      std::cout << ::vrednostP << std::endl;      return 0; }

Stvar je u tome da definišem vrednostP i kao true i kao false, te po potrebi da se ispisuje vrednost , ali tako da ne moram stalno da koristim std::cout već da samo definišem kada želim da očita globalnu , a kad lokalnu vrednost (za globalnu samo dodam ovo ::).

Dopuna: 06 Apr 2013 19:02

@morando

Može i tako Very Happy

Dopuna: 06 Apr 2013 19:04

vasa.93 ::!= je u C-u "nije jednako/različito", odnosno negacija jednakosti. Operator negacije je ! .

Znam, i u C++ je isti slučaj. Hvala vam ljudi, slučaj rešen Razz

Ko je trenutno na forumu
 

Ukupno su 1100 korisnika na forumu :: 43 registrovanih, 1 sakriven i 1056 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., AleksSE, amaterSRB, Apok, babaroga, bokisha253, cavatina, damirZR, Darkoniii_94, Denaya, Džordžino, Frunze, GORDI, ILGromovnik, ivica976, kalens021, krkalon, Kubovac, kunktator, LastTsar, Mad Serb, mane123, milenko crazy north, milimoj, milos.cbr, Miškić, mkukoleca, mnn2, nebkv, Nemanja.M, panzerwaffe, pein, repac, Rocky I, srbijaiznadsvega, tubular, vargas, vathra, vlad4, vladas87, voja64, zlatkoa987, šumar bk2