Gå til innhold

String inn og ut av funksjoner? løst


Anbefalte innlegg

Hei, jeg sliter med å få tekst inn og ut av funksjoner.

 

Endring 2:

 

Ok, for å gjøre det mye mer forståelig. Kompiler og kjør denne koden i en editor:

 

#include <stdio.h>

void funksjon(int,char);

int main(){

int a[]={1,2,3};
   int *pointera=a;

   char b[]="hei";
   char *pointerb=b;

funksjon(pointera,pointerb);

printf("\nPointer tall:%d",pointera);
printf("\nPointer tekst:%d",pointerb);

getchar();

return 0;}

void funksjon(int* tall,char* tekst)
{
printf("\nPointer tall:%d",tall);
printf("\nPointer tekst:%d",tekst); //Denne blir feil, hvorfor?
}

 

Hvorfor blir pointeren til teksten feil inne i funksjonen?

 

 

Gammel post:

#include <stdio.h>
#include <string.h>

char funksjon(char,int);

int main() {

char tekst[50]="Hei";
char *pointer=tekst;

printf("%s",funksjon(pointer,strlen(tekst))); //Pointer peker til tekst[0];

getchar();

return 0; }

char funksjon(char* txt, int length)
{
char tekstUT=*txt;

for (int i=0; i<=length-1; i++){
strcat(tekstUT,*txt+i);}

return tekstUT;
}

 

Denne metoden fungerer med int, men hvorfor ikke med char?

 

Endring: Har endret koden litt slik at den ble litt mer riktig. Skreiv litt for kjapt.

Endret av steffanhalv
Lenke til kommentar
Videoannonse
Annonse

Fant feilen. Det var at funksjonen ikke var deklarert som pointere, så det skal bli slik:

 

#include <stdio.h>

void funksjon(int* , char* );

int main()
{
   int a[] = {1, 2, 3};
   int *pointera = a;

   char b[] = "hello";
   char *pointerb = b;

   funksjon(pointera, pointerb);

   printf("Pointer number:%p\n", pointera);
   printf("Pointer text: %p\n", pointerb);

   getchar();

   return 0;
}

void funksjon(int *number, char *text)
{
   printf("Pointer number: %p\n", number);
   printf("Pointer text: %p\n", text);
}

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...