Rustの基本的な文字列型は&strを使用する。
fn main(){ let mut name: &str = "Yamada"; println!("{}", name); name = "Tanaka"; println!("{}", name); }
ライブラリとして提供されている文字列にStringがある。
fn main(){ let mut name = String::from("Yamada"); name = "Tanaka".to_string(); name.push_str(" Taro"); println!("{}", name); }
C++のchar型は1文字のみ
#include <stdio.h> int main(void) { char a = 'D'; char b = 'N'; char c = 'A'; printf("%c%c%c\n", a, b, c); return 0; }
複数文字は配列
#include <stdio.h> int main(void) { char str1[] = "DNA"; printf("%s\n", str1); printf("%lu\n", sizeof(str1)); return 0; }
char型のポインタ
int main(void) { const char* char_ptr = "DNA"; printf("%s\n", char_ptr); return 0; }
string型
#include <stdio.h> #include <string> #include <iostream> int main(void) { std::string str1 = "DNA"; std::string str2 = "RNA"; std::string str3 = str1 + str2; std::cout << str3 << std::endl; return 0; }
fn main(){ let s1 = String::from("ABC"); let s2 = String::from("ABC"); let s3 = String::from("XY"); if(s1 == s2){ println!("ABC == ABC"); } if(s1 < s3) { println!("ABC < XY"); } }
String::fromが便利すぎる。。