Đề XuấT, 2023

Editor Choice

Sự khác biệt giữa lối ra (0) và lối ra (1)

Lối ra (0) và lối ra (1) là các câu lệnh nhảy của C ++ làm cho điều khiển nhảy ra khỏi chương trình trong khi chương trình đang thực thi. Cả hai hàm, exit (0) và exit (1), được sử dụng để thoát khỏi chương trình, nhưng có một sự khác biệt lớn giữa exit (0) và exit (1). Lối ra (0) cho thấy việc kết thúc chương trình thành công và lối ra (1) cho thấy sự chấm dứt bất thường của chương trình.

Hãy nghiên cứu sự khác biệt giữa lối ra (0) và lối ra (1) với sự trợ giúp của biểu đồ so sánh.

Biểu đồ so sánh

Cơ sở để so sánhthoát (0)lối ra (1)
Căn bảnBáo cáo hệ điều hành về việc chấm dứt / hoàn thành "thành công / bình thường" của chương trình.Báo cáo hệ điều hành về việc chấm dứt "bất thường" của chương trình.
Cú phápthoát (0);lối ra (1);
Chỉ raNó chỉ ra rằng nhiệm vụ đã được thực hiện thành công.Nó chỉ ra rằng tác vụ đã bị hủy bỏ ở giữa vì lỗi.
MacroEXIT_SUCCESSEXIT_FAILURE

Định nghĩa lối ra (0)

Hàm thoát (0) là một câu lệnh nhảy của C ++. Nó được sử dụng để chấm dứt chương trình hoặc để điều khiển thoát ra khỏi chương trình. Nó báo cáo hệ điều hành về việc chấm dứt thành công chương trình cho biết hệ điều hành rằng nhiệm vụ của chương trình đã được hoàn thành thành công. Macro được sử dụng để trả về mã 0 0 0 là EXIT_SUCCESS, vì vậy, bạn có thể sử dụng nó theo cách thoát (EXIT_SUCCESS). Dạng chung của hàm exit (0) là: -

 khoảng trống thoát (int return_code); 

Ở đây, tham số chính thức, return return_code, là giá trị được trả về cho hàm gọi. Returen_code luôn thuộc loại số nguyên vì giá trị được trả về cho hàm gọi sẽ là 0 hoặc giá trị khác không. Lối ra (0) là một chức năng thư viện tiêu chuẩn, nếu chúng ta đang sử dụng lối ra (0) trong chương trình, chúng ta phải sử dụng tệp tiêu đề.
Hãy cho chúng tôi hiểu lối ra (0) với một ví dụ: -

 #include // hàm thư viện chuẩn int main () {FILE * ptrFile; ptrFile = fopen ("myfile.txt", "r"); // mở tệp ở chế độ chỉ đọc if (ptrFile == NULL) {cout << "Lỗi khi mở tệp"; lối ra (1); // luân phiên bạn có thể sử dụng exit (EXIT_FAILURE)} exit (0); // luân phiên bạn có thể sử dụng exit (EXIT_SUCCESS)} 

Trong đoạn mã trên, chúng tôi đang cố gắng mở một tệp có tên là my myfile.txt. Chúng tôi đã tạo một con trỏ tới tập tin My myileileile. Nếu tệp tin myfile.txt, không tồn tại, con trỏ sẽ trỏ đến địa chỉ của tệp đó và thoát (0) sẽ thực hiện báo cáo hệ điều hành mà tệp được mở thành công. Trong trường hợp tập tin không xuất hiện con trỏ tới tập tin, my myileile, giờ đây sẽ chứa NULL và thoát (1) sẽ thực hiện báo cáo hệ điều hành mà tập tin không mở do lỗi hoặc do điều gì đó.

Định nghĩa lối ra (1)

Hàm thoát (1) cũng là một câu lệnh nhảy của C ++. Lối ra (1) cũng chấm dứt chương trình nhưng, bất thường. Lối ra (1) báo cáo hệ điều hành rằng chương trình không được thực thi thành công hoặc bị hủy bỏ giữa quá trình thực thi do một số hoặc lỗi khác. Hàm exit (1) được xác định trong hàm thư viện chuẩn, trong trường hợp bạn đang sử dụng exit (1) trong chương trình của mình, bạn phải đề cập cụ thể đến tệp tiêu đề ở đầu chương trình.
Macro cho mã trả về, 1, 1 là EXIT_FAILURE, vì vậy, nó có thể được viết theo cách thoát khỏi lối thoát (EXIT_FAILURE).
Bây giờ hãy cho chúng tôi hiểu chức năng exit (1) với sự trợ giúp của chương trình.

 // bật phần tử ở đầu stack int pop (int stack_name, int size, int Top) {if (Top == - 1) {cout << "stack is underflow"; lối ra (1); } khác {int s = s [Đầu trang]; Hàng đầu--; trả lại (s); }} 

Ở đây, hàm được xác định để bật phần tử ở đầu ngăn xếp, nếu đỉnh của ngăn xếp được tìm thấy trống, tức là Top là -1. Sau đó, nhiệm vụ bật ra phần tử hàng đầu trong ngăn xếp không được hoàn thành thành công vì ngăn xếp trống, sau đó chúng tôi quay trở lại lối ra (1). Nó chỉ ra rằng nhiệm vụ của chức năng pop chưa được hoàn thành. Do đó, việc thực hiện bị chấm dứt bất thường.

Sự khác biệt chính giữa lối ra (0) và lối ra (1)

  1. Return_code duy nhất cho biết việc kết thúc chương trình thành công là Lọ 0. Để báo cáo việc chấm dứt chương trình bất thường, chúng tôi có thể sử dụng bất kỳ giá trị nào ngoài trừ 0 0 tức là chúng tôi có thể sử dụng CÂU 1, 1, 2, 3
  2. Một Macro cũng có thể được sử dụng thay cho return_code. Giống như, tại vị trí của 0 0, bạn có thể sử dụng EXIT_SUCCESS, trong khi ở vị trí của 1, bạn có thể sử dụng EXIT_FAILURE.

Tương tự:

  1. Cả exit (0) và exit (1), là các câu lệnh nhảy của C ++.
  2. Cả exit (0) và exit (1), được sử dụng để kết thúc chương trình.
  3. Cả exit (0) và exit (1), đều được xác định theo tệp tiêu đề.
  4. Cả exit (0) và exit (1), báo cáo trạng thái chấm dứt chương trình cho hệ điều hành.

Chú thích:

Nếu hàm exit () không trả về bất cứ điều gì, điều đó có nghĩa là nó không muốn tiết lộ trạng thái chấm dứt chương trình cho hệ điều hành.

Phần kết luận:

Để báo cáo trạng thái chấm dứt chương trình, người ta sử dụng hàm exit (). Một lối ra (0) tiết lộ cho hệ điều hành rằng nhiệm vụ của chương trình đã được hoàn thành thành công. Một lối ra (1) cho thấy rằng nhiệm vụ của chương trình chưa hoàn thành và việc thực hiện chương trình bị hủy bỏ một cách bất thường.

Top