summaryrefslogtreecommitdiff
path: root/old_curriculum/strings/strings1.rs
diff options
context:
space:
mode:
authorolivia <olivia@fastmail.com>2018-04-26 21:29:11 +0200
committerolivia <olivia@fastmail.com>2018-04-26 21:29:11 +0200
commit5e89d1e888a8fafc39096afce36d02e313f349c2 (patch)
tree97b13f8223012d1db88d510cd79ea0e49570d1f7 /old_curriculum/strings/strings1.rs
parent32ac403da5c49b002ba420186d3122501196ff89 (diff)
move old files to a separate directory
Diffstat (limited to 'old_curriculum/strings/strings1.rs')
-rw-r--r--old_curriculum/strings/strings1.rs46
1 files changed, 46 insertions, 0 deletions
diff --git a/old_curriculum/strings/strings1.rs b/old_curriculum/strings/strings1.rs
new file mode 100644
index 0000000..2e5088f
--- /dev/null
+++ b/old_curriculum/strings/strings1.rs
@@ -0,0 +1,46 @@
+// strings1.rs
+// 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.