Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

exit(), abort() และ assert() ใน C/C++


ทางออก()

ฟังก์ชัน exit() ใช้เพื่อยุติฟังก์ชันการเรียกทันทีโดยไม่ต้องดำเนินการตามกระบวนการเพิ่มเติม เมื่อเรียกใช้ฟังก์ชัน exit() ก็จะยุติกระบวนการ มันถูกประกาศในไฟล์ส่วนหัว “stdlib.h” ไม่คืนอะไรเลย

นี่คือรูปแบบคำสั่ง exit() ในภาษา C

void exit(int status_value);

ที่นี่

status_value − ค่าที่ส่งคืนไปยังกระบวนการหลัก

นี่คือตัวอย่าง exit() ในภาษา C

ตัวอย่าง

#include <stdio.h>
#include <stdlib.h>
int main() {
   int x = 10;
   printf("The value of x : %d\n", x);
   exit(0);
   printf("Calling of exit()");
   return 0;
}

ผลลัพธ์

The value of x : 10

ในโปรแกรมข้างต้น ตัวแปร 'x' จะถูกเริ่มต้นด้วยค่า พิมพ์ค่าของตัวแปรและเรียกใช้ฟังก์ชัน exit() เมื่อมีการเรียก exit() มันจะออกจากการดำเนินการทันทีและจะไม่พิมพ์ printf() การเรียก exit() เป็นดังนี้ −

int x = 10;
printf("The value of x : %d\n", x);
exit(0)

ยกเลิก()

ฟังก์ชั่น abort() ยุติการดำเนินการอย่างผิดปกติ ขอแนะนำว่าอย่าใช้ฟังก์ชันนี้ในการยกเลิก มันถูกประกาศในไฟล์ส่วนหัว “stdlib.h”

นี่คือไวยากรณ์ของ abort() ในภาษา C

void abort(void);

นี่คือตัวอย่าง abort() ในภาษา C

ตัวอย่าง

#include <stdio.h>
#include <stdlib.h>
int main() {
   int a = 15;
   printf("The value of a : %d\n", a);
   abort();
   printf("Calling of abort()");
   return 0;
}

นี่คือผลลัพธ์

ผลลัพธ์

The value of a : 15

ในโปรแกรมข้างต้น ตัวแปร 'a' จะถูกเริ่มต้นด้วยค่าและพิมพ์ออกมา เมื่อมีการเรียก abort() มันจะยุติการดำเนินการทันทีแต่ผิดปกติ การเรียก abort() มีดังต่อไปนี้

int a = 15;
printf("The value of a : %d\n", a);
abort();

ยืนยัน()

ฟังก์ชั่น assert() ถูกประกาศในไฟล์ส่วนหัว "asser.h" จะประเมินนิพจน์ที่กำหนดเป็นอาร์กิวเมนต์ ถ้านิพจน์เป็นจริงก็ไม่ทำอะไรเลย หากนิพจน์เป็นเท็จ จะเป็นการยกเลิกการดำเนินการ

นี่คือไวยากรณ์ของ assert() ในภาษา C

void assert(int exp);

ที่นี่.

ประสบการณ์ − นิพจน์ที่คุณต้องการประเมิน

นี่คือตัวอย่าง assert() ในภาษา C

ตัวอย่าง

#include <stdio.h>
#include <assert.h>
int main() {
   int a = 15;
   printf("The value of a : %d\n", a);
   assert(a!=15);
   printf("Calling of assert()");
   return 0;
}

ผลลัพธ์

The value of a : 15
main: main.c:9: main: Assertion `a!=15' failed.

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

int a = 15;
printf("The value of a : %d\n", a);
assert(a!=15);