Avatar billede krukken Juniormester
16. oktober 2004 - 12:37 Der er 8 kommentarer og
1 løsning

Mysql ROW til double

Hvordan jeg har en Mysql Row, hvor der ligger et tal. Dette tal skal skal konverteres til en double - og gives som parameter til en anden funktion.

Jeg har prøvet funktion(strtod(row[0],0),parameter, parameter) - men det virker ikke og giver en segmentfejl.

Jeg bruger Linux Redhat 9.0
Avatar billede arne_v Ekspert
16. oktober 2004 - 14:39 #1
Prøv:

char buf[30];
strncpy(buf,row[0],l[0]);
buf[l[0]]='\0';
x = atof(buf);
Avatar billede arne_v Ekspert
16. oktober 2004 - 14:39 #2
Hvis din compiler ikke har atof så:

x=strtod(buf,&ep);
Avatar billede arne_v Ekspert
16. oktober 2004 - 14:40 #3
l er det array du henter med mysql_fetch_lengths
Avatar billede krukken Juniormester
16. oktober 2004 - 15:01 #4
Jeg bruger ikke mysql_fetch_lengths da der kun er et tal.
Avatar billede krukken Juniormester
16. oktober 2004 - 15:02 #5
x=strtod(buf,&ep); - hvad er ep?
Avatar billede arne_v Ekspert
16. oktober 2004 - 15:08 #6
char *ep;

den peger på hvor parsningen sluttede

ep == buf betyder at der ikke var noget tal
Avatar billede arne_v Ekspert
16. oktober 2004 - 15:08 #7
Jeg tror at du skal bruge mysql_fetch_lengths anyway
Avatar billede krukken Juniormester
16. oktober 2004 - 15:10 #8
Jeg har prøvet med : x=strtod(buf,NULL);

Det virkede udemærket her første gang - men jeg vender lige tilbage om en time, så ved jeg om det virker:-)
Avatar billede arne_v Ekspert
17. oktober 2004 - 17:15 #9
Et svar såfremt ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester