Jak przekonwertowac DEC na ASCII

0

Witam serdecznie. Posiadam VISUAL STUDIO 2010.

Panowie mam taki problem. Napisalem programik, który odczytuje z pod wskazanego adresu pamięci wartość w DEC=90 (czyli ASCII =Z )

Problem polega na tym, że nie udaje mi się wyświetlić w np. label5 literki Z tylko ciągle wyswietla mi 90.

Tak mniej więcej wygląda fragment kodu:

ReadProcessMemory(hProcess, (int*)nickname3, &nick1, 1, &bit);//nick name

label5->Text=Convert::ToString(nick1);

jak zrobię natomiast

label5->Text=nick1; to od razu przy kompilacji wywala bład i z taką składnią nie mogę skompilować. Musi być taka składnia jak wyżej tylko że zamiast 90 aby się wyświetlało Z

Tak więc jeżeli ktoś ma jakąś informacje jak to wyświetlić w oknie programu będe bardzo wdzięczny. Zaznaczam, że dopiero się uczę i sa to moje pierwsze kroki ale straciłem cały dzień przeglądając fora i google i ciągle jestem w pkt. wyjścia.

0

Tibia?

0

Posiadam VISUAL STUDIO 2010.

Ja też posiadam VISUAL STUDIO. Jestem tylko ciekawy czemu zataiłeś fakt że masz VISUAL STUDIO C++ a nie VISUAL STUDIO C# - tak się składa że ten dział dotyczy raczej C#...

Problem polega na tym, że nie udaje mi się wyświetlić w np. label5 literki Z tylko ciągle wyswietla mi 90.

label5->Text=Convert::ToString(nick1);

0_o

z taką składnią nie mogę skompilować. Musi być taka składnia jak wyżej tylko że zamiast 90 aby się wyświetlało Z

0_o

Ale OK, skoro już pytasz...
label5->Text = ((char)nick1).ToString()

0

Kolego nie chciałem ukryć faktu, tylko że zabardzo sam sie nie orientuje jeszcze w temacie jaka wersje posiadam.

Co do tej linijki która podałeś, kompiluje się program lecz efekt ten sam jest, nadal mam w label5 wyświetlaną wartość 90 :(.

Może to kwestią zmiennej ? bo nick ma zmieną INT choć jak robiłem CHAR to to samo. Sukces mam taki, że w takiej postaci odczytuje z danego adresu pamięci
tylko nadal mam ZONK jak zrobić aby podawało w label5 literke zamiast wartości DEC.

Jakies inne pomysły ?

0

Panowie czy nikt nie zna prostego sposobu aby w VC+ prosto przekonwertowac wartosc 65 na litere?

ja juz 2 dni siedze i nie udaje się :(

przyklad kodu:

int cyfra=65;
label1->Text = ((char)cyfra.ToString()

zawsze podaje 65 na label 1

ale gdy zrobie

char litera='A';
label1->Text = ((int)litera.ToString()

to tak mi pokazuje 65, natomiast nie ma opcji przekonwertowania w drugą strone :(

0
 int cyfra=65;
            string c = ((char)cyfra).ToString();
            label1.Text = c;

            char litera='B';
            string l = ((int)litera).ToString();
            label2.Text = l; 

kod z c# działający jak należy.

0

ten kod do C# ja za chiny nie potrafie tego zaimplementować do VC+. Dla VC+ string jest traktowany jako niezadeklarowana zmienna :(

poza tym nie da sie bezposrednio wyslac do label1->Text watrosci ze zmiennej :(.

Jakies inne sugestie?

0
char znak = 65;
label1->Text = znak.ToString();
0
Azarien napisał(a)
char znak = 65;
label1->Text = znak.ToString();

to nie działa.

Prosiłbym aby przed podaniem kodu go ew. sprawdzić bo przepisuje te linijki ale każda działa tak samo. Zamiast konwertować wyświetla 65 :(

0

Chodzi o to, że potrzebuje z:

int cyfra=65; lub np. odczytać z adresu pamięci jakąś wartość np. 65 albo 90

to potrzebuje tę wartość wyświetlić w okienku w label jako literę "A" lub inną którą program mi przekonwertuje, bo a = 65 w tabelce ASCII.

pod dosem w c++ prosty program działa wpisuje 65 dostaje wynik A

natomiast nie mam pojecia jak to zrobic jako aplikacja win32. Dlatego proszę o kod lub komendę która działa bo do tej pory wszystkie rady i pomysły są bezskuteczne.

0

Zamiast char użyj wchar_t:

wchar_t znak = 65;
label1->Text = znak.ToString();

(albo Char z dużej litery, to to samo)

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