Avatar ·

Wie maskiere ich geschweifte Klammern in einem Format-String in Rust?

Hallo zusammen! Ich habe gerade angefangen, Rust zu lernen, und bin auf ein Problem bei der Arbeit mit dem `format!`-Makro (und auch `println!`) gestoßen. Ich muss einen String ausgeben, der buchstäbliche geschweifte Klammern `{` und `}` enthält. Zum Beispiel möchte ich eine JSON-ähnliche Ausgabe erzeugen oder einfach einen mathematischen Ausdruck wie `{x: 5}` anzeigen.\n\nIch habe es so versucht:\n\n```rust\nlet x = 5;\nprintln!("{x: {}}", x);\n```\n\nAber der Compiler gibt einen Fehler aus: "invalid format string: expected `'}'` but string was terminated". Ich verstehe, dass geschweifte Klammern in Rust als Platzhalter für die Substitution von Werten verwendet werden. Aber wie kann ich die Klammern selbst als normale Zeichen ausgeben?\n\nIch habe versucht, sie mit einem Backslash `\\{` zu maskieren – das funktioniert nicht. Ich habe versucht, sie zu verdoppeln `{{` – der Compiler hat sich dann anders beschwert. In anderen Sprachen (Python, C#) habe ich...