אופרטור קבלת הכתובת
חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 62 מתוך 109.
אופרטור הכתובת (&) מקבל את כתובת הזיכרון של משתנה. כך יוצרים מצביעים ב-Go.
צרו משתנה וקבלו את כתובת הזיכרון שלו:
func main() {
number := 42
addressOfNumber := &number
fmt.Println("Value:", number)
fmt.Println("Address:", addressOfNumber)
}הפלט מציג את הערך ואת כתובת הזיכרון שלו:
Value: 42
Address: 0xc000018030הכתובת (כמו 0xc000018030) היא מספר הקסדצימלי שמייצג את מיקום הזיכרון שבו הערך מאוחסן. הכתובת הזאת תהיה שונה בכל פעם שתריצו את התוכנית.
אתגר
מתחילים&) ב-Go. אופרטור לקבלת כתובת מחזיר את כתובת הזיכרון של משתנה, שבה הערך של המשתנה מאוחסן בזיכרון המחשב.המשימה שלכם היא להשתמש באופרטור לקבלת כתובת כדי לקבל את כתובת הזיכרון של המשתנה שסופק ולאחסן אותה במשתנה המצביע שכבר הוצהר.
נסו בעצמכם
package main
import "fmt"
func main() {
// זהו המשתנה לדוגמה שלנו
name := "Gopher"
// כאן מוכרז משתנה מצביע לשמירת הכתובת של מחרוזת
var namePointer *string
// TODO: השתמשו באופרטור קבלת הכתובת (&) כדי לקבל את כתובת הזיכרון של 'name'
// ושמרו אותה במשתנה 'namePointer'
// הדפיסו את הערך שאליו המצביע מצביע
fmt.Printf("The value at that memory address is: %v\n", *namePointer)
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואה – חלק 1אופרטורי השוואה – חלק 2אופרטור AND לוגיאופרטור OR לוגיאופרטור NOT לוגייסודות קדימות אופרטוריםסיכום – ביצוע השוואות7זרימת בקרה: לולאות
הסבר על לולאת `for`לולאת `for` – בסיסיתלולאת `for` – תנאי בלבדמילת המפתח `break`מילת המפתח `continue`לולאות מקוננותסיכום – חזרה על פעולות2משתנים וסוגי נתונים בסיסיים
מהו משתנההסקת טיפוס באמצעות `:=`מספרים שלמים (int)מספרים בנקודה צפהערכים בוליאנייםמחרוזותערכי אפסקבועיםמוסכמות לשמותסיכום – משתנים וטיפוסים8פונקציות
הבנת פונקציותהצהרה על פונקציהקריאה לפונקציותפרמטרים של פונקציההחזרת ערך יחידהחזרת מספר ערכיםערכי החזרה בעלי שםיסודות תחום ההשפעה של פונקציהסיכום - יצירת קוד לשימוש חוזר3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור חילוקאופרטור מודולואופרטור השמהאופרטורי השמה מורחבתהגדלה והקטנהסיכום – חישובים6זרימת בקרה: תנאים
פקודת `if`מילת המפתח `else`מילת המפתח `else if`הסתרת משתנים בתוך `if`אתחול משתניםפקודת `switch``switch` עם ביטויים`switch` ללא ביטוימילת המפתח `fallthrough`סיכום - קבלת החלטות9מצביעים
מהו מצביע?הצהרת משתני מצביעאופרטור קבלת הכתובתביטול הפניה של מצביעיםשימוש במצביעים בפונקציותמצביעי Nilסיכום – הבנת מצביעיםתרגלו בעצמכם: קומפיילר Go אונליין