Wie konvertiert man ein ASCII-String-Literal (zB "123 458") in eine & [u8] Scheibe im Rost? Rost hat 6? 7? String-Typen, und es gibt fast keine Einheitlichkeit in was Sie aufrufen, um zwischen ihnen zu konvertieren.Konvertieren Sie ein ASCII-String-Literal nach & [u8] in Rust?
Ich erwarte es etwas entlang der Linien von sein:
let array:&[u8] = Ascii("123 456").into_bytes().as_slice().givemetheeffingbufferalready() as &[u8];
Bitte nehmen Sie es auf den Glauben, die ich brauche wirklich, dies zu tun; Ich schreibe Testfälle für einen Dateiparsercode.
In der Tat hat Rust nur zwei String-Typen, 'String' und' str'. –
Ich weiß nicht, woher Sie die Idee, dass es 6 oder 7 String-Typen hat, und ich weiß nicht, wo Sie die Idee, dass es fast keine Einheitlichkeit in Conversion-Aufrufe ist; Es gibt zwar immer noch sehr wenige Orte, wo nicht alles konsistent gemacht wurde, in der Regel ist alles sehr konsistent. 'std :: ascii' ist einer der wenigen Bereiche, die noch ein wenig überarbeitet werden können. Es ist nicht das Schönste, mit dem man arbeiten kann, und es lohnt sich zu erkennen, dass "Ascii" der Typ eines * einzelnen ASCII-Oktetts * ist, und dass 'Vec'/'[Ascii]' die "ASCII-Zeichenkette" werden es war. –
Es gibt [einige Regeln] (https://github.com/rust-lang/rust/wiki/Doc-detailed-release-notes#cast-naming-conventions) über die Benennung von Conversions, also versuchen wir es zu sein so einheitlich wie möglich. – huon