ในการคอมพิวเตอร์ ตัวชี้ที่เป็นโมฆะ (อังกฤษ: null pointer) คือ หรือ ที่ไม่ได้อ้างอิงถึงวัตถุที่ถูกต้อง โปรแกรมมักจะใช้ตัวชี้ที่เป็นโมฆะ เพื่อแสดงเงื่อนไขต่างๆ เช่น การสิ้นสุดรายการที่ไม่ทราบความยาว หรือความล้มเหลวในการดำเนินการบางอย่าง การใช้ตัวชี้ที่เป็นโมฆะนี้สามารถเปรียบเทียบกับ ประเภทที่เป็นโมฆะได้ และกับค่า Nothing ใน ประเภทตัวเลือก
คุณไม่ควรสับสนตัวชี้ที่เป็นโมฆะกับ ตัวชี้ที่ไม่ได้ใส่ค่าเริ่มต้น (อังกฤษ: uninitialized pointer) กล่าวคือ ตัวชี้ที่เป็นโมฆะรับประกันว่าจะเปรียบเทียบออกมามีค่าไม่เท่ากับตัวชี้ใด ๆ ที่ชี้ไปยังวัตถุที่ถูกต้อง อย่างไรก็ตาม ขึ้นอยู่กับภาษาและการอิมพลีเมนต์ ตัวชี้ที่ไม่ได้ใส่ค่าเริ่มต้นอาจมีพฤติกรรมต่างไปจากนั้น เช่น มันอาจแสดง
เนื่องจากตัวชี้ที่เป็นโมฆะ ไม่ได้ชี้ไปยังวัตถุที่ถูกต้อง ความพยายามในการเข้าถึงข้อมูลที่จัดเก็บไว้ในตำแหน่งหน่วยความจำนั้น (อันเป็นโมฆะ) อาจทำให้เกิดข้อผิดพลาดรันไทม์หรือโปรแกรมล่ม นี่คือ ข้อผิดพลาดของตัวชี้ที่เป็นโมฆะ นี่เป็นจุดอ่อนของซอฟต์แวร์ประเภทหนึ่งที่พบบ่อยที่สุด นอกจากนี้ Tony Hoare ผู้แนะนำแนวคิดนี้ เรียกสิ่งนี้ว่าเป็น "ความผิดพลาดมูลค่าพันล้านดอลลาร์"
ภาษาซี
ในภาษาซี, ตัวชี้ที่เป็นโมฆะสองตัวใดๆ(ไม่ว่าจะเป็นชนิดข้อมูลใดก็ตาม)จะเปรียบเทียบได้เป็นค่าเท่ากันเสมอ
ดูเพิ่ม
อ้างอิง
- "CWE-476: NULL Pointer Dereference". MITRE.
- ISO/IEC 9899, clause 6.3.2.3, paragraph 4.
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
inkarkhxmphiwetxr twchithiepnomkha xngkvs null pointer khux hrux thiimidxangxingthungwtthuthithuktxng opraekrmmkcaichtwchithiepnomkha ephuxaesdngenguxnikhtang echn karsinsudraykarthiimthrabkhwamyaw hruxkhwamlmehlwinkardaeninkarbangxyang karichtwchithiepnomkhanisamarthepriybethiybkb praephththiepnomkhaid aelakbkha Nothing in praephthtweluxk khunimkhwrsbsntwchithiepnomkhakb twchithiimidiskhaerimtn xngkvs uninitialized pointer klawkhux twchithiepnomkharbpraknwacaepriybethiybxxkmamikhaimethakbtwchiid thichiipyngwtthuthithuktxng xyangirktam khunxyukbphasaaelakarximphliemnt twchithiimidiskhaerimtnxacmiphvtikrrmtangipcaknn echn mnxacaesdng enuxngcaktwchithiepnomkha imidchiipyngwtthuthithuktxng khwamphyayaminkarekhathungkhxmulthicdekbiwintaaehnnghnwykhwamcann xnepnomkha xacthaihekidkhxphidphladrnithmhruxopraekrmlm nikhux khxphidphladkhxngtwchithiepnomkha niepncudxxnkhxngsxftaewrpraephthhnungthiphbbxythisud nxkcakni Tony Hoare phuaenanaaenwkhidni eriyksingniwaepn khwamphidphladmulkhaphnlandxllar phasasiinphasasi twchithiepnomkhasxngtwid imwacaepnchnidkhxmulidktam caepriybethiybidepnkhaethaknesmxduephimkarpxngkntwchithiepnomkhaxangxing CWE 476 NULL Pointer Dereference MITRE ISO IEC 9899 clause 6 3 2 3 paragraph 4