Kezdőoldal » Számítástechnika » Programozás » C++ ban miért van az hogy pl:...

C++ ban miért van az hogy pl: két unsigned short értéket össze akarok szorozni és kiiratni egy unsigned int változóba és nem szorozza össze (0-t ad)?

Figyelt kérdés

#include <iostream>

using namespace std;

int main()

{

unsigned short szelesseg;

unsigned short hosszusag;

unsigned int terulet;

terulet = szelesseg*hosszusag;

cout << "szelesseg: ";

cin >> szelesseg;

cout << "hosszusag: ";

cin >> hosszusag;

cin.get();

cout << "Terulet: " ;

cout << terulet;

cin.get();

}


Viszont, ha ugyanolyannak deklarálom mindhárom változót, akkor működik. Az unsigned short-okat muszáj lenne átalakítani unsigned int-be?



2012. máj. 17. 12:47
 1/6 iostream ***** válasza:
Inicializálatlan értékeket használsz. Bármi megtörténhet.
2012. máj. 17. 12:50
Hasznos számodra ez a válasz?
 2/6 anonim ***** válasza:
nem ártana azután összeszorozni, miután beolvastad az értékeket :D
2012. máj. 17. 12:58
Hasznos számodra ez a válasz?
 3/6 anonim ***** válasza:

Próbáld ki explicit kasztolással, tehát:


terulet = (unsigned int)szelesseg * (unsigned int)hosszusag

2012. máj. 17. 13:10
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:
Nem történik véletlenül túlcsordulás? Próbáld ki unsigned longgal!
2012. máj. 17. 22:42
Hasznos számodra ez a válasz?
 5/6 A kérdező kommentje:
Köszönöm, tényleg elég volt beolvasás után szorozni össze, nem kellett mást tenni!
2012. máj. 18. 07:26
 6/6 anonim ***** válasza:
Ez aztán végtelenül meglepő.
2019. ápr. 25. 19:11
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!