Hilfe mit Pointer-Feldern



  • Schaut euch den code an!

    Danke im voraus

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    
    void main(void)
    {
    char *line[10], *temp;
    char buffer[90];
    int i=0,a,b;
    
    	while((i<10)&&(buffer[0]!='\0'))
    	{
    		printf("Strings eingeben <Leere Zeile==Ausgang>\n");
    		gets(buffer);
    		//Wenn hier i++; steht und 
    		line[i]=(char*)malloc(strlen(buffer)+1);
    		strcpy(line[i++],buffer);//hier [i] anstat [i++] funkioniert der Code nicht Warum????
    	}	
    
    		for(a=0;a<i-1;a++)
    			for(b=a+1;b<i;b++)
    				if(strlen(line[a])<strlen(line[b]))
    				{
    				temp=line[a];
    				line[a]=line[b];
    				line[b]=temp;
    				}
    
    		for(a=0;a<i;a++)
    			printf("%s\n",line[a]);
    
    }
    


  • Wahrscheinlich deshalb, weil du von position eins aus anfängst reinzuschreiben
    und später in der Vorschleife ab position Null liest.


Anmelden zum Antworten