ASCII na kod binarny

0

Witam,
Chcę zapisać do tablicy kod binarny znaków wpisanych z klawiatury do TextBoxa. O ile zapis dziesiętny nie jest wielkim problemem to z binarnym pojawia się problem. Każdy znak w TextBoxie ma zostać zamieniony dokładnie na 8 bitowy ciąg. Wolałbym nie bawić się tutaj w matematykę i konwertowanie liczb dziesiętnych na binarne, tylko wykorzystać np. klasę bitset. Nie bardzo wiem tylko jak wpisać to do tablicy. Fragment tego kodu wygląda następująco (oczywiście nie działa ze względu na problem konwersji):

    for (int i=0;i<TextBox1->Text->Length;i++)
          {
              znak[i] = TextBox1->Text[i];
              kod_bin[i] = bitset<8>(znak[i]);
}

Pracuję w C++ Visual Studio 2008, Windows Forms Aplication.

0

string str=bitset<8>(znak[i]).to_string<char,std::string::traits_type,std::string::allocator_type>();

0

Ok, ale teraz mi chodzi o to, aby wartość str zapisać do tablicy char na pozycję "i", czyli kod_bin[i]

0

A jaka jest deklaracja tego kod_bin?

0

Jest to typ znakowy - char

0

Czy może łaskawie wkleisz kawałek kodu czy też uważasz że osoba która zechce ci pomóc musi wypożyczać kryształową kule?

0

Jeżeli informacje które podałem są dla Ciebie nie wystarczające, to znaczy że nie jesteś w stanie mi pomóc.

0

@_13th_Dragon Właśnie! Dlaczego się udzielasz jeśli nic nic potrafisz! Poza tym dostałeś fragment kodu w pierwszym poście i napisał, że to char!

0

Wg. Twojego opisu wynika, że w jednym znaku chcesz zapisać 8 znaków...
Podaj fragment kodu, albo opisz DOKŁADNIE co chcesz osiągnąć.

Zakładam, że kod_bin to tablica typu char tak?

0

Zgadza się, kod_bin to tablica char. Chcę, aby dla każdego znaku wpisanego w textbox w tablicy znalazła się jego wartość binarna. Czyli np dla wpisanych liter "Azf" tablica kod_bin ma wyglądać tak:
kod_bin[0] = 01000001
kod_bin[1] = 01111010
kod_bin[2] = 01100110

0

Czy wiesz że char zajmuje jeden bajt (jeden znak) a kod binarny który podałeś ma 8 znaków plus kod zakończenia czyli razem 9.
Jak sobie wyobrażasz wepchnięcie 9 znaków w jeden?

0

Trochę to dla mnie nie logiczne, że 8 bitów nie mieści się w jednym bajcie, no ale ok. W takim razie niech kod_bin[] będzie typu int.

0

Ależ się mieszczą np znak[i] - jeden bajt = osiem bitów.
Ale ty chcesz te bity przedstawić jako znaki.

0

Chyba autor nie odróżnia reprezentacji danych od ich przechowywania

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