ความแตกต่างระหว่างตัวแปรท้องถิ่นและตัวแปรส่วนกลาง (พร้อมตาราง)

สารบัญ:

Anonim

เนื่องจากคอมพิวเตอร์ได้กลายเป็นส่วนสำคัญในชีวิตของเราในขณะนี้ และอย่างที่เราทุกคนทราบกันดีอยู่แล้วว่าได้กดขี่เรา การรู้รายละเอียดบางอย่างของคอมพิวเตอร์ซึ่งโดยทั่วไปช่วยเราในแต่ละวันนั้นไม่ใช่เรื่องเสียหาย เพื่อเจาะลึกในหัวข้อที่ค่อนข้างเป็นเทคนิคและเชิงลึก เราควรดูที่แนวคิดของตัวแปรและความแตกต่างระหว่างประเภท - ท้องถิ่นและระดับโลก

ตัวแปรท้องถิ่นและตัวแปรทั่วโลก

ความแตกต่างระหว่าง Local Variables และ Global Variables คือแม้ว่าทั้งสองจะเป็นตัวแปรสองประเภท แต่ตัวแปรแรกจะถูกประกาศในฟังก์ชันในขณะที่ตัวแปรหลังถูกประกาศไว้ภายนอก อายุขัยของพวกเขาแตกต่างกันเช่นกัน ในขณะที่ชีวิตของอดีตเริ่มต้นและจบลงด้วยการดำเนินการและการสิ้นสุดของฟังก์ชัน แต่ส่วนหลังจะถูกสร้างขึ้นก่อนที่การทำงานของโปรแกรมจะเริ่มต้นขึ้น อย่างไรก็ตาม มันจบลงด้วยการยกเลิกโปรแกรม

ตัวแปรท้องถิ่นเป็นตัวแปรชนิดหนึ่ง มันถูกประกาศในฟังก์ชัน และช่วงอายุการใช้งานของมันมีตั้งแต่การดำเนินการจนถึงการสิ้นสุด ขอบเขตของมันยังถูกจำกัดภายในฟังก์ชันที่ได้รับการประกาศ หากไม่ได้กำหนดค่าเริ่มต้นก็สามารถเก็บ "ค่าขยะ" ได้

ในทางกลับกัน ตัวแปรส่วนกลางก็เป็นประเภทของตัวแปรเช่นกัน มีลักษณะเฉพาะโดยการประกาศนอกฟังก์ชัน มันถูกสร้างขึ้นก่อนที่โปรแกรมจะเริ่มทำงาน อย่างไรก็ตาม มันจบลงด้วยการสิ้นสุดของโปรแกรม หากไม่ได้กำหนดค่าเริ่มต้น ระบบจะเก็บค่าศูนย์ไว้เป็นค่าเริ่มต้น

ตารางเปรียบเทียบระหว่างตัวแปรท้องถิ่นและตัวแปรส่วนกลาง

พารามิเตอร์ของการเปรียบเทียบ

ตัวแปรท้องถิ่น

ตัวแปรทั่วโลก

การแบ่งปันข้อมูล ไม่สามารถทำได้ที่นี่เนื่องจากข้อมูลสามารถเข้าถึงได้โดยฟังก์ชันเดียวเท่านั้น เนื่องจากเข้าถึงได้หลายฟังก์ชัน จึงใช้ฟีเจอร์นี้ได้
พารามิเตอร์ การส่งพารามิเตอร์ไปยังค่าการเข้าถึงมีความจำเป็นสูงสุด การส่งผ่านพารามิเตอร์ไม่จำเป็นอย่างยิ่งเนื่องจากสามารถเข้าถึงค่าได้ตลอด
การดัดแปลง หากค่าถูกแก้ไขในฟังก์ชันใดฟังก์ชันหนึ่ง การปรับเปลี่ยนดังกล่าวจะไม่มีผลกับฟังก์ชันอื่น หากค่าถูกแก้ไขในฟังก์ชันใดฟังก์ชันหนึ่ง การปรับเปลี่ยนดังกล่าวจะสะท้อนให้เห็นทั้งหมดผ่านโปรแกรม
การช่วยสำหรับการเข้าถึง สามารถเข้าถึงได้ผ่านคำสั่งที่มีอยู่ในฟังก์ชัน สามารถเข้าถึงได้ผ่านคำสั่งใด ๆ ที่มีอยู่ในโปรแกรม
พื้นที่จัดเก็บ สิ่งนี้ถูกเก็บไว้ในตำแหน่งที่ไม่ระบุเว้นแต่จะระบุไว้ นี้ถูกเก็บไว้ในตำแหน่งที่ระบุ

ตัวแปรท้องถิ่นคืออะไร?

นี่คือตัวแปรชนิดหนึ่ง คุณสมบัติของมันคือการประกาศภายในหรือภายในฟังก์ชันบางอย่าง และค่าของมันสามารถเข้าถึงได้โดยคำสั่งดังกล่าวที่รวมอยู่ในฟังก์ชันเท่านั้น อายุการเก็บรักษาเริ่มต้นเมื่อการดำเนินการของโปรแกรมเริ่มต้นและสิ้นสุดด้วยการสิ้นสุดของโปรแกรม

อีกแง่มุมหนึ่งคือขอบเขตยังถูกจำกัดไว้ภายในฟังก์ชันที่ได้รับการประกาศไว้ หากไม่ได้กำหนดค่าเริ่มต้นก็สามารถเก็บ "ค่าขยะ" ได้ ด้วยเหตุนี้ จึงไม่สามารถแชร์ข้อมูลได้ เนื่องจากฟังก์ชันเดียวเท่านั้นที่สามารถเข้าถึงข้อมูลได้ นอกจากนี้ การส่งพารามิเตอร์ไปยังค่าการเข้าถึงนั้นมีความจำเป็นอย่างยิ่ง

อีกปัจจัยที่ต้องสังเกตคือ ถ้าค่าถูกแก้ไขในฟังก์ชันใดฟังก์ชันหนึ่ง การปรับเปลี่ยนดังกล่าวจะไม่สะท้อนถึงฟังก์ชันอื่นๆ สามารถเข้าถึงได้ผ่านคำสั่งที่มีอยู่ในฟังก์ชัน

มีข้อดีบางประการ เช่น รับประกันว่าค่าจะคงเดิมแม้ในขณะที่งานกำลังทำงานอยู่ เนื่องจากงานแต่ละงานสร้างตัวแปรในเครื่อง ผลลัพธ์จะยังคงสามารถคาดเดาได้ พวกมันจะถูกลบออกเมื่อฟังก์ชั่นใด ๆ เสร็จสมบูรณ์ ดังนั้นจึงปล่อยพื้นที่หน่วยความจำที่ถูกครอบครองก่อนหน้านี้

Global Variables คืออะไร?

นี่ก็เป็นตัวแปรชนิดหนึ่งเช่นกัน มีลักษณะเฉพาะโดยการประกาศนอกฟังก์ชัน มันถูกสร้างขึ้นก่อนที่โปรแกรมจะเริ่มทำงาน อย่างไรก็ตาม มันจบลงด้วยการสิ้นสุดของโปรแกรม หากไม่ได้กำหนดค่าเริ่มต้น ระบบจะเก็บค่าศูนย์ไว้เป็นค่าเริ่มต้น

การแบ่งปันข้อมูลสามารถทำได้ที่นี่ เนื่องจากสามารถเข้าถึงฟังก์ชันต่างๆ ได้ คุณลักษณะนี้เป็นไปได้ การส่งผ่านพารามิเตอร์ไม่จำเป็นอย่างยิ่งเนื่องจากค่าสามารถเข้าถึงได้โดยอาศัยการประกาศตัวแปรนอกฟังก์ชัน หากค่าถูกแก้ไขในฟังก์ชันใดฟังก์ชันหนึ่ง การปรับเปลี่ยนดังกล่าวจะสะท้อนให้เห็นทั้งหมดผ่านโปรแกรม สามารถเข้าถึงได้ผ่านคำสั่งใด ๆ ที่มีอยู่ในโปรแกรม

มีข้อดีบางประการเช่นสามารถเข้าถึงได้จากฟังก์ชันทั้งหมดของโปรแกรม เป็นสิ่งสำคัญในการจัดเก็บ "ค่าคงที่" และช่วยรักษาความสม่ำเสมอ สิ่งนี้มีประโยชน์มากที่สุดเมื่อหลายฟังก์ชันเข้าถึงข้อมูลเดียวกัน ข้อเสียของมันคือตัวแปรหลายตัวยังคงอยู่ในหน่วยความจำจนกว่าโปรแกรมจะทำงาน ซึ่งอาจนำไปสู่ปัญหา "หน่วยความจำไม่เพียงพอ" นอกจากนี้ บางครั้งผลลัพธ์อาจไม่น่าเชื่อถือและคาดเดาไม่ได้ เนื่องจากข้อมูลสามารถเปลี่ยนแปลงหรือเปลี่ยนแปลงได้ด้วยฟังก์ชันใดๆ

ความแตกต่างหลักระหว่างตัวแปรท้องถิ่นและตัวแปรทั่วโลก

บทสรุป

เมื่อความสลับซับซ้อนในโลกของคอมพิวเตอร์เพิ่มมากขึ้น ความสับสนที่เกิดขึ้นจะยังคงปรากฏต่อไป นี่คือเหตุผลที่เราควรทำความคุ้นเคยกับแนวคิดของตัวแปรและประเภทของตัวแปร แม้ว่าทั้งสองจะเป็นตัวแปรสองประเภท แต่ตัวแรกนั้นถูกประกาศในฟังก์ชัน ในขณะที่ตัวหลังถูกประกาศภายนอก อายุขัยของพวกเขาแตกต่างกันเช่นกัน ในขณะที่ชีวิตของอดีตเริ่มต้นและจบลงด้วยการดำเนินการและการสิ้นสุดของฟังก์ชัน แต่ส่วนหลังจะถูกสร้างขึ้นก่อนที่การทำงานของโปรแกรมจะเริ่มต้นขึ้น อย่างไรก็ตาม มันจบลงด้วยการยกเลิกโปรแกรม พวกเขามีข้อดีและข้อเสียของตัวเอง

ข้อดีบางประการของข้อแรกคือรับประกันว่าค่าต่างๆ จะยังคงอยู่แม้ในขณะที่งานกำลังทำงาน และเมื่องานแต่ละงานสร้างตัวแปรในเครื่อง ผลลัพธ์จะยังคงสามารถคาดเดาได้ นอกจากนี้ ข้อดีบางประการของรุ่นหลังคือสามารถเข้าถึงได้จากฟังก์ชันทั้งหมดของโปรแกรม

อ้างอิง

  1. https://onlinelibrary.wiley.com/doi/full/10.1111/cogs.12831
  2. https://www.sciencedirect.com/science/article/pii/S1878029615001905

ความแตกต่างระหว่างตัวแปรท้องถิ่นและตัวแปรส่วนกลาง (พร้อมตาราง)