webForumDet fria alternativet

Hur sätter jag en floats värde i samma position som en char pekare pekar på

C/C++

7 svar · 263 visningar · startad av R0yalty

Medlem sedan mars 20036 inlägg
Frågan#1

Säg att jag har en GLfloat och en char* deklarerade på följande sätt :

GLfloat ytrans= 1.0f;
char* meddelande = "blabla";

det jag vill göra är att meddelande = ytrans; så att meddelande tilldelas värdet i ytrans fast som text. Så att jag sedan kan visa ytrans som text. hur ska jag bära mej åt?

Medlem sedan juni 200010 432 inlägg
#2

Går inte då charpekaren är konstant efter en sådan tilldelning. Ett annat problem är att char * har mindre antal bitar än en float.

Det jag istället skulle rekommendera är sprintf.. diskuteras bl.a här -> http://www.webforum.nu/showthread.php?s=&threadid=67431

Medlem sedan mars 20036 inlägg
#3

Tack för ditt svar

Medlem sedan mars 20036 inlägg
#4

Men detta hjälper ju iof inte så mycket, för den vägrar ju konvertera från float till char * i velket fall, jag kanske bara e dum å gör fel, men gjorde typ såhär

sprintf(meddelande,ytrans);

Medlem sedan aug. 20021 752 inlägg
#5

Skriv

sprintf(meddelande,"%f",ytrans);

Så ska det nog fungera.
Du kan även skriva

sprintf(meddelande,"%.2f",ytrans);

För att tex bara få 2 decimaler.

/Viktor

Medlem sedan mars 20036 inlägg
#6

Tack det funkar kalas, men vad gör "%f"

Medlem sedan aug. 20021 752 inlägg
#7

Det är formateringen av den data som du vill föra in i strängen, finns nog de här på forumet som kan förklara bättre men här är en kort förklaring.

%d=decimal tal
%f=float
%c=charecter
%s=string

char mål[100];
char c='-';
char* fnamn="Viktor";
char* enamn="G";
int ålder=10;
float tid=00.57;
sprintf(mål,"Jag heter %s%c%s och är %d år och kl är nu %f",fnamn,enamn,ålder,tid);
cout << mål << endl;

Detta skulle resultara i

Jag heter Viktor-G och är 10 år och kl är nu 00:57

Hoppas hjälper lite :)

/Viktor

Medlem sedan mars 20036 inlägg
#8

A hjälper jätte mycket tack ska du ha :D

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)