RiccardoG97 (Member)
Pro
Messaggi: 133
Iscritto: 03/01/2012
|
Sto creando un gioco in C++ con SDL.
Devo scrivere sulla finestra il punteggio del giocatore ma non ci riesco.. Ho provato varie funzioni ma accettano solo parametri const char, mentre io gli devo passare una variabile intera.
Come potrei fare?
Grazie in anticipo a tutti
|
|
dmr (Normal User)
Pro
Messaggi: 141
Iscritto: 04/01/2012
|
Ciao, se il tuo compilatore la supporta potresti provare a usare la funzione itoa.
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6379
Iscritto: 03/01/2010
|
Usa la sprintf (anche se non comprendo le tue perplessità ...)
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
RiccardoG97 (Member)
Pro
Messaggi: 133
Iscritto: 03/01/2012
|
Scusate forse non mi sono spiegato bene...
Devo stampare sulla finestra del mio gioco il punteggio, utilizzando un font.
Con allegro per esempio c'era una funzione apposta. Dopo dovevo caricare il file .ttf nella directory del mio gioco ed era fatto. però non riesco con SDL.
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6379
Iscritto: 03/01/2010
|
Hai detto di aver provato varie funzioni ... di quale parli?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
RiccardoG97 (Member)
Pro
Messaggi: 133
Iscritto: 03/01/2012
|
Avevo provato così:
Codice sorgente - presumibilmente C++ |
#include "SDL.h" #include "SDL_TTF.h" SDL_Surface *message = NULL; SDL_Surface *screen = NULL; TTF_Font *font = NULL; SDL_Color textColor = { 255, 255, 255 }; int main ( int argc, char* argv[] ) { font = TTF_OpenFont ( "Font.ttf", 28 ); message = TTF_RenderText_Solid ( font, "Qui posso solo inserire un parametro const char, mentre io vorrei inserire un integer", textColor ); SDL_BlitSurface ( message, NULL, screen, NULL ); SDL_UpdateRect ( screen, 0, 0, 0, 0 ); /* Tutto il resto del programma */ return 0; }
|
Con la funzione TTF_RendText_Solid posso solo passargli un parametro const char, mentre io (dato che devo mostrare un punteggio) gli devo passare un parametro integer.
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6379
Iscritto: 03/01/2010
|
Beh, converti il tuo numero in una stringa e la passi alla funzione ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
RiccardoG97 (Member)
Pro
Messaggi: 133
Iscritto: 03/01/2012
|
Provo a convertire con
Codice sorgente - presumibilmente Plain Text |
static_cast<const char>(points)
|
ERRORE: argomento const char incompatibile con const char*
Dice che deve ricevere un puntatore a const char.
Provo così:
Codice sorgente - presumibilmente Plain Text |
static_cast<const char>(pointsPtr) //PointsPtr punta points
|
Ma mi dà sempre errore...
ERRORE: conversione di tipo non valida
Sai come si potrebbe risolvere? |
|
RiccardoG97 (Member)
Pro
Messaggi: 133
Iscritto: 03/01/2012
|
Provo a convertire con
Codice sorgente - presumibilmente Plain Text |
static_cast<const char>(points)
|
ERRORE: argomento const char incompatibile con const char*
Dice che deve ricevere un puntatore a const char.
Provo così:
Codice sorgente - presumibilmente Plain Text |
static_cast<const char>(pointsPtr) //PointsPtr punta points
|
Ma mi dà sempre errore...
ERRORE: conversione di tipo non valida
Sai come si potrebbe risolvere? |
|