Ĺadny brzuch
Jak w temacie. Mam funkcja której argumentem może być jedynie "const char" ale ja chcę użyć zmienną typu Int jak mogę ją przekonwertować??
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Po prostu rzutuje się niejawnie.
int a =0;
char b =0;
b = a; // Niejawne rzutowanie
b = (char)a; // Jawne
pozdro
spax.
użyj funkcji itoa() bo z rzutowania w tą strone to śmieci wychodzą (odwrotnie to uzyskasz kod ascii znaku)
wymaga biblioteki stdlib.h
int i=1256;
char c[13];
itoa(i,c,10); //(liczba,string,baza liczby)
//i teraz c wynosi "1256"
Użytkownik pablo295 edytował ten post 08 grudzień 2005, 17:04
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Nie rozumiem za bardzo waszych postów. Chodzi mi o to że mam funkcje z BGI windowsa która wyświetla tekst jest to funkcja outtexxy(x,y,*cons char). Robię grę i akurat to miało być odpowiedzialne za "odpełnianie" życia mam zmienną zycie typu int i chcę ją wywołać w tej funkcji jak mam ją przekonwertować???
int x = 1234; char b[10]; itoa(x,b,10); outtextxy(1,2,b);
int x = 1234; char b[10]; itoa(x,b,10); outtextxy(1,2,b);
Jaki dołaćzyć plik nagłówkowy do funkcji itoa()? <stdlib> ?
Wszystko spoko jak pisze taj jak podałeś z małym dodatkiem:
{ int liczba = 100; char a[10]; itoa(liczba,a,10); cout << a << endl; liczba -= 20; itoa(liczba,a,10); cout << a << endl; }
Wszystko spoko i wyświetla 80. Ale jeśli przeniose to do funkcji outtextxy() to zamiast 80 wyświetla 800 :huh:
P.S
Czytałem objajaśnienie tej funkcji(itoa()) ale nie rozumiem o co chodzi z tym ostatnim parametrem, jeśli zmieniłem go z 10 na inny to wychodziły w ogóle inne liczby!
Lol, nawet sam nie wiedziałemo o co chodzi z ostatnią zmienną :D To jest system liczbowy - od 2 do 36 :)
Wszystko spoko jak pisze taj jak podałeś z małym dodatkiem:
{ int liczba = 100; char a[10]; itoa(liczba,a,10); cout << a << endl; liczba -= 20; itoa(liczba,a,10); cout << a << endl; }
Wszystko spoko i wyświetla 80. Ale jeśli przeniose to do funkcji outtextxy() to zamiast 80 wyświetla 800 :huh:
P.S
Czytałem objajaśnienie tej funkcji(itoa()) ale nie rozumiem o co chodzi z tym ostatnim parametrem, jeśli zmieniłem go z 10 na inny to wychodziły w ogóle inne liczby!
No tak, pomyśl, jaką masz najpierw liczbę? 100. W tablicy a[]:
100+++++++
Potem, wpisujesz do tablicy 80, ale pozostałości po setce pozostają(a konkretnie to ostatnie zero, czyli a[2])
800+++++++
a. czyścić a przed każdym wywołaniem itoa (w jakikolwiek sposób)
b. umieszczać za skopiowaną z "liczba" do "a" liczbą znak końca łańcucha czyli '\0'
Użytkownik Catz edytował ten post 15 grudzień 2005, 01:28
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Po prostu rzutuje się niejawnie.
int a =0;
char b =0;
b = a; // Niejawne rzutowanie
b = (char)a; // Jawne
pozdro
spax.
użyj funkcji itoa() bo z rzutowania w tą strone to śmieci wychodzą (odwrotnie to uzyskasz kod ascii znaku)
wymaga biblioteki stdlib.h
int i=1256;
char c[13];
itoa(i,c,10); //(liczba,string,baza liczby)
//i teraz c wynosi "1256"
Użytkownik pablo295 edytował ten post 08 grudzień 2005, 17:04
Nie musisz robić rzutowania, choć jesli bardzo chcesz: (const char) int
Nie rozumiem za bardzo waszych postów. Chodzi mi o to że mam funkcje z BGI windowsa która wyświetla tekst jest to funkcja outtexxy(x,y,*cons char). Robię grę i akurat to miało być odpowiedzialne za "odpełnianie" życia mam zmienną zycie typu int i chcę ją wywołać w tej funkcji jak mam ją przekonwertować???
int x = 1234; char b[10]; itoa(x,b,10); outtextxy(1,2,b);
int x = 1234; char b[10]; itoa(x,b,10); outtextxy(1,2,b);
Jaki dołaćzyć plik nagłówkowy do funkcji itoa()? <stdlib> ?
Wszystko spoko jak pisze taj jak podałeś z małym dodatkiem:
{ int liczba = 100; char a[10]; itoa(liczba,a,10); cout << a << endl; liczba -= 20; itoa(liczba,a,10); cout << a << endl; }
Wszystko spoko i wyświetla 80. Ale jeśli przeniose to do funkcji outtextxy() to zamiast 80 wyświetla 800 :huh:
P.S
Czytałem objajaśnienie tej funkcji(itoa()) ale nie rozumiem o co chodzi z tym ostatnim parametrem, jeśli zmieniłem go z 10 na inny to wychodziły w ogóle inne liczby!
Lol, nawet sam nie wiedziałemo o co chodzi z ostatnią zmienną :D To jest system liczbowy - od 2 do 36 :)
Wszystko spoko jak pisze taj jak podałeś z małym dodatkiem:
{ int liczba = 100; char a[10]; itoa(liczba,a,10); cout << a << endl; liczba -= 20; itoa(liczba,a,10); cout << a << endl; }
Wszystko spoko i wyświetla 80. Ale jeśli przeniose to do funkcji outtextxy() to zamiast 80 wyświetla 800 :huh:
P.S
Czytałem objajaśnienie tej funkcji(itoa()) ale nie rozumiem o co chodzi z tym ostatnim parametrem, jeśli zmieniłem go z 10 na inny to wychodziły w ogóle inne liczby!
No tak, pomyśl, jaką masz najpierw liczbę? 100. W tablicy a[]:
100+++++++
Potem, wpisujesz do tablicy 80, ale pozostałości po setce pozostają(a konkretnie to ostatnie zero, czyli a[2])
800+++++++
a. czyścić a przed każdym wywołaniem itoa (w jakikolwiek sposób)
b. umieszczać za skopiowaną z "liczba" do "a" liczbą znak końca łańcucha czyli '\0'
Użytkownik Catz edytował ten post 15 grudzień 2005, 01:28