Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Câu lệnh để thoát ra khỏi 1 hàm

  1. #1
    Ngày gia nhập
    04 2008
    Nơi ở
    Bốn bề là nhà
    Bài viết
    703

    Mặc định Câu lệnh để thoát ra khỏi 1 hàm

    Chào mọi người, có ai biết cách thoát ra khỏi 1 hàm ngoài câu lệnh return không?
    trong Pascal có câu lệnh exit rất tiện dùng.
    nhưng exit của C thì out cả hàm main() luôn
    giả sử hàm A có lời gọi tới hàm B và mình chỉ muốn thoát khỏi hàm B thôi chẳng hạn,thì có cách nào không?
    Bạn nào biết chỉ cho mình nha.
    thanks!

  2. #2
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất nhiều sóng gió
    Bài viết
    470

    Có longjmp() và setjmp().

    longjmp() dùng để nhảy đến một đích xa bất kỳ trong call stack của chương trình. setjmp() là sửa soạn đích nhảy cho longjmp(). Ví dụ, nếu hàm A gọi hàm B, hàm B gọi hàm C, nếu đặt setjmp() ở A và longjmp() ở C thì ta có thể thoát từ C về thẳng A.

    Hai hàm này dùng để xử lý ngoại lệ (exception) trong C. Chúng cũng là 1 trong số vài cơ chế được dùng để thực thi ngữ nghĩa xử lý ngoại lệ của cấu trúc catch...throw.... trong C++.

  3. #3
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,006

    Cách cấu trúc chương trình. Đó là 1 cách đơn giản nhất...

    nếu chỉ muốn B nằm vẻn vẹn trong A....
    nếu muốn vào B thì kết thúc A....

    (trong Pascal cũng ko nhất thiết phải gọi exit để kết thúc hàm nếu bạn có cách cấu trúc ct của mình chặt chẽ)
    ^_,^

    Tổng hợp các câu chuyện hài hước vui nhộn, sử dụng Speech Synthesis để đọc : https://www.youtube.com/channel/UCLk...Tjrg/playlists


    Bùi Tấn Quang

Các đề tài tương tự

  1. Hà Nội xưa, Hà Nội phố - Một thoáng hoài niệm
    Gửi bởi vietnamduhi trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 23-10-2013, 02:51 PM
  2. Bệnh thoái hóa đốt sống cô - NEOSAMIN Thuốc chữa bệnh thoái hóa đốt sống
    Gửi bởi thuocqui trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 24-05-2012, 09:43 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn