Avatar billede evilfish Nybegynder
30. juli 2008 - 12:06 Der er 5 kommentarer og
1 løsning

substr opfører sig underligt

Hej eksperter

Jeg har et problem jeg ikke kan gennemskue. Jeg er ved at indlæse en fil i et program, hvor jeg kigger hver linie igennem. Et eksempel kunne være:

serverIP=127.0.0.1;

Jeg bruger følgende kode til dette (Lige pt skriver jeg bare informationen til konsollen):

//Initialize strings
string a = "";
string b = "";
               
//Gather devider and end points
int devider = line.find("=");
int end = line.find(";");
               
//Extract information
a.append(line.substr(0, devider));
b.append(line.substr(devider+1, end));
             
//Print it
printf("%s is %s\n", a.c_str(), b.c_str());

Problemet er at når jeg trækker informationen (Extract information) ud af linierne, så får jeg for meget med.

Jeg skulle gerne end ud med:
a: serverIP
b: 127.0.0.1

Men jeg ender altid ud med:
a: serverIP
b: 127.0.0.1;

Jeg får altid semikolon med, selvom det rent syntax messigt ikke skulle gøre det. Selv i debug mode passer tallene med at semikolon ikke skulle være med, men det kommer med lige meget hvad.

Nogen der har en ide til hvorfor det sker?
Avatar billede erikjacobsen Ekspert
30. juli 2008 - 12:11 #1
Den anden parameter er ikke slutpositionen men længden.
Avatar billede erikjacobsen Ekspert
30. juli 2008 - 12:11 #2
Avatar billede evilfish Nybegynder
30. juli 2008 - 12:16 #3
AHHHHH. (Jeg er en hat)
Avatar billede evilfish Nybegynder
20. oktober 2008 - 13:33 #4
Svar lige så jeg kan lukke tråden
Avatar billede erikjacobsen Ekspert
20. oktober 2008 - 13:53 #5
Jeg samler slet ikke på point, tak. Svar selv, accepter dit eget svar.
Avatar billede evilfish Nybegynder
31. oktober 2008 - 13:43 #6
ok
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