Jeg sidder her og roder med en funktion der skal fjerne blanke tegn. Dertil har jeg lavet en main()-funktion, men den er hvist ikke helt som den skal være, er der nogen der kan se fejlen?
Med venlig hilsen stjernen..
void opg18() { char string[50];
printf("Indtast en linje:"); gets(string); fjern_blanke(string); printf("Resultat: %s\n", string); } void fjern_blanke(char s[]) { int i, j;
Her er et forslag. Måake er det ikke voldsomt pænt men det virker da efter hensigten. Jeg har gjort så der er taget hensyn til hvis flere mellemrum kommer efter hinanden i strengen. Som en svaghed kan det nævnes at du max må sende en streng ind i den på 255 tegn da bufferen ellers vil overflowe. Dette kunne laves med string i stedet men jeg kan se at du selv bruger arrays så.. Nå men her er koden så
>thomas_nj, ja man må godt gøre sådan, men i dit tilfælde skal man ikke tælle count2 op inden man skrive nul termineringen, det bevirker at der kommer et tegn for meget med i slutningen.
Synes godt om
Ny brugerNybegynder
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.