Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Kompatibilitätsproblem Win <-> UNIX

  1. #1
    Gast

    Post Kompatibilitätsproblem Win <-> UNIX

    ich habe etwas schwierigkeitren beim arbeiten mit zeigern. Folgender Code läuft z.B nur unter Win aber nicht unter Linux.
    Weiss jemand von Euch, woran das liegt??

    Code:
    #include <stdio.h>
    #include <string.h>
    int copy(char *a,char *b){
    	strcpy(*a,*b);
    	return 0;
    }
    int main(int argc,char *argv[]){
    	char * str1="1. String";
    	char * str2="2. String";
    	int i;
    	copy(str1,str2);
    	printf ("%s %s\n",str1,str2);
    	return 0;
    }

  2. #2
    Registrierter Benutzer
    Registriert seit
    20.10.1999
    Ort
    Dresden
    Beiträge
    255

    Post

    Das Programm hätte unter Windows nicht funktionieren dürfen...

    <pre>
    #include &lt;string.h&gt;
    #include &lt;stdio.h&gt;

    int copy(char *a,char *b){
    strcpy(a,b);
    return 0;
    }
    int main(int argc,char *argv[]){
    char str1[]="1. String";
    char str2[]="2. String";
    copy(str1,str2);
    printf ("%s %s\n",str1,str2);
    return 0;
    }
    </pre>

    Thomas

  3. #3
    Gast

    Post

    und warum nicht?

    fallst du auf die includes anspeilst, die sind nr durch die tags verschwunden!!!

    Olli

  4. #4
    Registrierter Benutzer
    Registriert seit
    20.10.1999
    Ort
    Dresden
    Beiträge
    255

    Post

    Nein, das mit den includes ist ein altbekanntes Problem mit HTML-Tags

    Es ist der Aufruf von strcpy(*a,*b);, hier dereferenzierst Du einmal zu viel.

    Thomas

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •