- Ich habe einen Code für die Länge einer Zeichenfolge geschrieben.
- Dies wird erfolgreich kompiliert kaufen gibt es ein Problem bei der Ausgabe.
- Meine Ausgabe bleibt hängen, nachdem ich die Zeichenfolge eingegeben habe.
- i die Länge mit Zeigern
#include<stdio.h>
int leng(char*);
void main()
{
char str[20];
scanf("%s",str);
printf("%s",str);
int l;
l=leng(str);
printf("%d",l);
}
int leng(char*p)
{
int l=0;
while(*p!='\0')
{
l++;
}
return l;
}
Die Schleife in 'leng()' testet den Wert von '* p', ändert aber niemals' p' oder '* p'. Es ist daher eine Endlosschleife. – Peter
..etwas, das wäre offensichtlich gewesen, wenn Sie Ihren Debugger verwendet haben, auch nur ein paar wichtige Vars jedes Mal ausgedruckt :(Bitte schreiben Sie nicht mehr Code, bis Sie Ihren Debugger verwenden können. –