ความแตกต่างระหว่างทางออก (0) และทางออก (1)
เนื้อหา
exit (0) และ exit (1) เป็นคำสั่ง jump ของ C ++ ที่ทำให้การควบคุมกระโดดออกจากโปรแกรมในขณะที่โปรแกรมกำลังทำงาน ทั้งฟังก์ชั่น exit (0) และ exit (1) ใช้เพื่อออกจากโปรแกรม แต่มีความแตกต่างที่สำคัญอย่างหนึ่งระหว่าง exit (0) และ exit (1) ทางออก (0) แสดงถึงการสิ้นสุดของโปรแกรมที่ประสบความสำเร็จและทางออก (1) แสดงถึงการสิ้นสุดของโปรแกรมที่ผิดปกติ
ให้ศึกษาความแตกต่างระหว่าง exit (0) และ exit (1) ด้วยความช่วยเหลือของกราฟเปรียบเทียบ
- แผนภูมิเปรียบเทียบ
- คำนิยาม
- ความแตกต่างที่สำคัญ
- ข้อสรุป
กราฟเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | ออก (0) | ออก (1) |
---|---|---|
ขั้นพื้นฐาน | รายงานระบบปฏิบัติการเกี่ยวกับการสิ้นสุด / สำเร็จ "ปกติ / สำเร็จ" ของโปรแกรม | รายงานระบบปฏิบัติการเกี่ยวกับการสิ้นสุดของโปรแกรม "ผิดปกติ" |
วากยสัมพันธ์ | ออก (0); | ทางออก (1); |
บ่งชี้ว่า | มันบ่งชี้ว่างานได้ดำเนินการเรียบร้อยแล้ว | มันบ่งชี้ว่างานถูกยกเลิกในระหว่างเพราะข้อผิดพลาด |
แมโคร | EXIT_SUCCESS | EXIT_FAILURE |
คำจำกัดความของการออก (0)
ฟังก์ชัน exit (0) เป็นคำสั่ง jump ของ C ++ มันถูกใช้เพื่อยกเลิกโปรแกรมหรือปล่อยให้การควบคุมออกจากโปรแกรม มันรายงานระบบปฏิบัติการเกี่ยวกับการยกเลิกที่สำเร็จของโปรแกรมซึ่งบ่งชี้ถึงระบบปฏิบัติการว่างานของโปรแกรมเสร็จสมบูรณ์แล้ว มาโครที่ใช้สำหรับโค้ดส่งคืน“ 0” คือ“ EXIT_SUCCESS” ดังนั้นคุณสามารถใช้มันในการออกทาง (EXIT_SUCCESS) รูปแบบทั่วไปของฟังก์ชัน exit (0) คือ: -
เป็นโมฆะทางออก (int return_code);
ที่นี่พารามิเตอร์ทางการ“ return_code” คือค่าที่ส่งคืนไปยังฟังก์ชันการโทร returen_code เป็นประเภทจำนวนเต็มเสมอเนื่องจากค่าที่ส่งคืนไปยังฟังก์ชันการโทรจะเป็นศูนย์หรือค่าที่ไม่ใช่ศูนย์ exit (0) เป็นฟังก์ชั่นไลบรารีมาตรฐานถ้าเราใช้ exit (0) ในโปรแกรมเราต้องใช้ไฟล์ส่วนหัว #include ในรหัสข้างต้นเราพยายามเปิดไฟล์ชื่อ“ myfile.txt” เราได้สร้างตัวชี้ไปยังไฟล์“ myfile.txt” หากไฟล์“ myfile.txt” มีอยู่ตัวชี้จะชี้ไปยังที่อยู่ของไฟล์นั้นและออก (0) จะดำเนินการรายงานระบบปฏิบัติการที่เปิดไฟล์สำเร็จ ในกรณีที่ไฟล์ไม่ปรากฏตัวชี้ไปยังไฟล์“ myfile.txt” ในขณะนี้จะมี NULL และ exit (1) จะดำเนินการรายงานระบบปฏิบัติการว่าไฟล์ไม่เปิดเนื่องจากข้อผิดพลาดหรือบางสิ่ง ฟังก์ชั่น exit (1) ยังเป็นคำสั่งข้ามของ C ++ exit (1) จะยุติการทำงานของโปรแกรม แต่ผิดปกติ ทางออก (1) รายงานระบบปฏิบัติการว่าโปรแกรมไม่ได้ดำเนินการสำเร็จหรือถูกยกเลิกระหว่างการดำเนินการเนื่องจากข้อผิดพลาดบางอย่างหรือข้อผิดพลาดอื่น ๆ ฟังก์ชัน exit (1) ถูกกำหนดไว้ในฟังก์ชันไลบรารีมาตรฐานในกรณีที่คุณใช้ exit (1) ในโปรแกรมของคุณคุณต้องพูดถึงไฟล์ส่วนหัวโดยเฉพาะ // pop องค์ประกอบที่ด้านบนของ stack int pop (int stack_name, ขนาด int, int Top) {if (Top == - 1) {cout << "stack is underflow"; ทางออก (1); } else {int s = s; Top--; ผลตอบแทน }} ที่นี่ฟังก์ชั่นถูกกำหนดให้ปรากฏองค์ประกอบที่ด้านบนของสแต็คหากพบว่าด้านบนของสแต็กจะว่างเปล่าเช่นด้านบนคือ -1 จากนั้นภารกิจในการดึงองค์ประกอบด้านบนสุดในสแต็กยังไม่เสร็จสมบูรณ์เนื่องจากสแต็กว่างเปล่าจากนั้นเราจะส่งกลับทางออก (1) มันบ่งชี้ว่างานของฟังก์ชั่นป๊อปยังไม่เสร็จสมบูรณ์ ดังนั้นการดำเนินการจะถูกยกเลิกอย่างผิดปกติ หากฟังก์ชั่น exit () ไม่ส่งคืนสิ่งใดแสดงว่าไม่ต้องการเปิดเผยสถานะการสิ้นสุดของโปรแกรมไปยังระบบปฏิบัติการ ในการรายงานสถานะการสิ้นสุดของโปรแกรมหนึ่งใช้ฟังก์ชัน exit () exit (0) เปิดเผยกับระบบปฏิบัติการว่างานของโปรแกรมเสร็จสมบูรณ์ ทางออก (1) แสดงให้เห็นว่างานของโปรแกรมไม่เสร็จสมบูรณ์และการดำเนินการของโปรแกรมจะถูกยกเลิกอย่างผิดปกติ
ให้เราเข้าใจ exit (0) ด้วยตัวอย่าง: -
คำจำกัดความของทางออก (1)
มาโครสำหรับโค้ดส่งคืน“ 1” คือ“ EXIT_FAILURE” ดังนั้นจึงสามารถเขียนได้ในลักษณะ“ ออก (EXIT_FAILURE)”
ตอนนี้ให้เราเข้าใจฟังก์ชั่น exit (1) ด้วยความช่วยเหลือของโปรแกรม
ความคล้ายคลึงกัน:
บันทึก:
สรุป: