sscanf und Konvertierungsfehler
-
Hallo,
Manchmal (!!!) erhalte ich bei einer Umwandlung mit:
sscanf(Text,"%s",Text);
Fehler, aber keine vom Compiler sondern einfach falsch gewandelte Zeichen, manchmal geht dass aber Problemlos!!!
Wenn ich:strcpy(Cache,Text);
sscanf(Cache,"%s",Text);verwende nicht mehr !!!
Kann mir das jemand erklären? Liest sscanf intern den Text nicht sowiso schon in einen Zwischenspeicher, oder wird da direkt von Quelle zum Ziel kopiert?
-
sscanf(string,"%s",**&**string) ist nicht definiert
ich glaube mal gelesen zu haben dass das probleme verursachen kann...
um \n am ende zu entfernen probiers so:if(string[strlen(string)]=='\n')string[strlen(string)]='\0';
-
@CGI-BIN
Deine Erklärung ist ganz ok, sscanf kopiert nicht die Zeichenkette in einen internen Buffer - das würde auch einen Geschwindigkeitsverlust bedeuten.
Kurz: Der Zielstring sollte nicht auch noch ein Parameter von sscanf sein - deshalb funktioniert auch die 2. Version.cu