Przypisywanie liczby

0

Witam mam problem.Jest taki program

#include<iostream>
using namespace std;
int main(){
int duzy =0xfff; // liczba 4095
char maly;
maly=(char) (duzy+1);
cout << (int) maly <<"--"<<duzy<<endl;

I mamy
0xfff = 111111111111 (12 jedynek)
0xfff+1 = 1000000000000 (1 i 12 zer)

I TUTAJ MAM PROBLEM.
Jak teraz 0xfff+1 przypisac do chara ??
Bo wynikiem powinno byc 0-4095

Prosze o pomoc.

0

Nie, wynikiem powinno by 0.
0xfff+1=0x10000
konwersja na char oznacza weź ostatnie dwie cyfry z zapisu szesnastkowego czyli 0x00.

0

A w przypadku
0xfff = 111111111111 (12 jedynek)
Jak bedzie, bo mam przykład że 0x11111111 (8jedynek)

0

rzutując to na char, będzie -1

1 użytkowników online, w tym zalogowanych: 0, gości: 1