Original von Amin Negm-Awad
So etwas wie
NSString* text = [NSString stringWithFormat:@"%c%d", '\\', 65];
funktioniert nicht. Es führt zu \65 (nicht der Ersatz von \65 = 'A'), weil der Compiler das nie sieht.
Nun verstehe ich deine Argumentation nicht.
Natürlich führt das zu \65. Du übergibst ja erst via Escape-Sequenz das \ und anschließend die 65. Was sollte da anderes rauskommen als \65?
Wenn du willst, dass \65 als Zeichen interpretiert wird, musst du schon \65 als Zeichen übergeben.
NSString* text = [NSString stringWithFormat:@"%c", \65];
Alles Andere ist ja albern.
(War es auch schon vor über 14 Stunden, ich weiß.)
Original von Amin Negm-Awad
Vorschläge, die bei der Generierung darauf basieren können daher nicht funktionieren. Übrigens auch bei Stoßtrupp nicht. Schon bei Dennis 1972 funktionierte entsprechendes nicht. Man müsste den String durch den Compiler jagen.
Wo wurde denn etwas Anderes vorgeschlagen, als zur Generierung des anzuzeigenden Zeichens einfach das anzuzeigende Zeichen einzugeben?
Original von Amin Negm-Awad
Dann gibt es den Formatstring. Der wird zur Laufzeit interpretiert. Daher funktioniert ein %C mit anschließendem Code. Diese Interpretation wird von bestimmten Methoden gemacht, die das spezifizieren. Und diese Methoden erwarten eine Ganzzahl als Parameter, keinen String mit einer Zahl. Daher kann das mit @"1234"m @"\1234", @"Ӓ" usw. immer noch nicht funktionieren.
Wie ich schon schrieb:
[NSString stringWithFormat:@"%c%c", \xDE, \xAD];
Klappt, läuft, funktioniert.
Original von Amin Negm-Awad
Das ist eigentlich ganz einfach und stand schon vor 14 Stunden in diesem Thread. Aber dann kamen diejenigen, die es besser wissen …
Ich denke nicht, dass es um 'besser wissen' geht. Eher um 'was zur Hölle passiert da?'
Offenbar liefern
[NSString stringWithFormat:@"%c%c", \xDE, \xAD];
[NSString stringWithString:@"\xDE\xAD"];
@"\xDE\xAD";
[[NSMutableString mutableString] appendString:@"\xDE\xAD"];
[[NSMutableString mutableString] appendFormat:@"%c%c", \xDE, \xAD];
immer dasselbe Ergebnis: die Unicode-Zeichen für \xDE und \xAD.
Ich verstehe nicht, wie der OP eine Zeichenkette erzeugen konnte, ohne dass diese Ersetzung durchgeführt wurde. Ich vermute, dass das für zermelo auch ein Rätsel ist.
Offenbar scheint es für den OP aber völlig logisch, dass die von seinem Algorithmus zurückgegebene Zeichenkette dargestellt "\xDE\xAD" lautet.
Und hier fehlt mir die Vorstellungskraft, wie so etwas passieren kann.
(außer, man arbeitet mit Dingen wie [NSString stringWithFormat:@"%c%d", '\\', 65];, aber das ist dann ja schon mutwillig.)
«Applejack» "Don't you use your fancy mathematics to muddle the issue!"
Iä-86! Iä-64! Awavauatsh fthagn!
Iä-86! Iä-64! Awavauatsh fthagn!
kmr schrieb:
Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P