summaryrefslogtreecommitdiff
path: root/strings/strings1.rs
diff options
context:
space:
mode:
Diffstat (limited to 'strings/strings1.rs')
-rw-r--r--strings/strings1.rs45
1 files changed, 45 insertions, 0 deletions
diff --git a/strings/strings1.rs b/strings/strings1.rs
new file mode 100644
index 0000000..2bfbba2
--- /dev/null
+++ b/strings/strings1.rs
@@ -0,0 +1,45 @@
+// Make me compile without changing the function signature! Scroll down for hints :)
+
+fn main() {
+ let answer = current_favorite_color();
+ println!("My current favorite color is {}", answer);
+}
+
+fn current_favorite_color() -> String {
+ "blue"
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+// The `current_favorite_color` function is currently returning a string slice with the `'static`
+// lifetime. We know this because the data of the string lives in our code itself -- it doesn't
+// come from a file or user input or another program -- so it will live as long as our program
+// lives. But it is still a string slice. There's one way to create a `String` by converting a
+// string slice covered in the Strings chapter of the book, and another way that uses the `From`
+// trait.