Trang 1 trên tổng số 4 123... Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 36 kết quả

Đề tài: Hàm getch() trong C hoạt động như thế nào?

  1. #1
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Mặc định Hàm getch() trong C hoạt động như thế nào?

    Công dụng của hàm này là gì vậy?

  2. #2
    No Avatar
    tanthang Khách

    mình sẽ giải thích cho bạn một số ý nghĩ của các lệnh cơ bản
    #include <stdio.h> :Với include là toán tử,còn stdio.h là 1 tập chương trình trong đó có cài đặt các hàm xuất nhập.
    main() ùng để khai báo bắt đầu khối chương trình chính.
    {} :có tác dụng giới hạn khối chương trình.
    printf(); ùng để in dữ liệu nằm trong cặp dấu ngoặc ra thiết bị xuất(ở đây là màn hình đó) đã được cài đặt sẵn trong stdio.h.
    getch(); :Có tác dụng dừng màn hình để xem kết quả.và nhập phím bất kì để trả về màn hình soạn thảo.

  3. #3
    Ngày gia nhập
    11 2006
    Bài viết
    633

    getch(); :Có tác dụng dừng màn hình để xem kết quả.và nhập phím bất kì để trả về màn hình soạn thảo.
    Sai ý nghĩa của hàm này rồi, hàm này dùng để lấy 1 ký tự hoặc 1 ký số từ vùng đệm, nếu vùng đệm = NULL thì nó sẽ yêu cầu nhập vào.

  4. #4
    No Avatar
    tanthang Khách

    Sao kì vậy anh huynguyen..anh giải thích khác xa lời thầy em luôn..em đã tham khảo sgk và thấy điều em nói là đúng chứ ko hề sai:em có thễ dẫn sách em đã xem luôn đây(giáo trình lý thuyết&bài tập ngôn ngữ C tập 1 nhà xuất bản phương đông) Nếu theo như anh nói là em sai vậy chẵng lẽ là sách in sai ah.Mong anh cho em lời giải thích.

  5. #5
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Ủa vậy là sao?

  6. #6
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,760

    Mặc định Hàm getch() trong C hoạt động như thế nào?

    Bạn huynguyen nói đúng đó tanthang.

    Hàm getch là một hàm dùng để lấy một ký tự từ bàn phím hoặc một console nào đó, ký tự này được lưu giữ trong vùng đệm nhưng không echoing với màn hình (Hiểu nôm na là nó không in ký tự đó lên màn hình, đúng hơn là nó không có làm việc hay quan hệ với màn hình)

    Một chương trình trên DOS OS sẽ kết thúc ngay khi mà nó hoàn thành. Do máy tính hoạt động quá nhanh nên bạn không thể xem được chương trình của mình đã in lên màn hình những gì. Khi mới bắt đầu lập trình, để giải quyết việc này thường thì bạn sẽ sử dụng hàm getch để chờ cho nhập một ký tự bất kỳ mới kết thúc chương trình. Nhưng đối với một dự án lớn hơn thì việc này được thay thế bằng các menu chỉ dẫn chứ không đơn giản chỉ là chờ nhấn một phím.

    Nếu đã nói là đọc theo sách thì cũng nên đọc từ đầu đến cuối. Một số sách họ chỉ viết tác dụng của hàm trong chương trình cụ thể để dễ nắm bắt chứ không nói bản chất của hàm đã sử dụng, đều đó rất tai hại.
    Email: kevin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó.
    Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp hoặc bị sự thiếu kỷ luật làm tiêu tan sự nghiệp.

  7. #7
    No Avatar
    tanthang Khách

    ừ,để mình rút kinh nghiệm!hihi!cám ơn nhìu nha mấy bác!thực ra mình chỉ xem tác dụng của lệnh getch(); trên 1 số bài toán cụ thể ah!chứ chả thấy sách viết như mấy bác!cám ơn sự chia sẽ kiến thức của mấy bác pro!hihi

  8. #8
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    trong Dev-C++ trước khi kết thúc return 0; thi phải có getch() để dừng hình xem kết quả va thoát khi nhận sự kiện của phím ^o^!
    None!

  9. #9
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Vậy theo mình hiểu khi đọc là hàm getch dùng để lấy kí tự từ bàn phím nhưng không hiện lên màn hình.và sau khi nhận được phím gõ nghĩa là đã kết thúc chương trình ( kết thúc ctrình bằng hàm getch ) nên nó tự trở về màn hình soạn thảo.Đúng vậy không?

    Vậy nếu hàm getch so sánh với scanf thì scanf phải chờ ta enter mới nhận là đã gõ phím gì đúng không?Còn getch thì không cần enter.
    Cả 2 hàm đều không xuất phím đã gõ lên màn hình phải không?
    Đã được chỉnh sửa lần cuối bởi langman : 04-04-2009 lúc 02:39 PM.

  10. #10
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,760

    Hàm getch chỉ là hàm lấy một ký tự thôi, hàm này không liên quan đến màn hình.

    Còn scanf là hàm dùng để scan một chuỗi theo định dạng nào đó. Hàm này có in lên màn hình đó thôi.
    Email: kevin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó.
    Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp hoặc bị sự thiếu kỷ luật làm tiêu tan sự nghiệp.

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

  1. Lập trình C thắc mắc câu lệnh getch()
    Gửi bởi mr.cuong_tq trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 3
    Bài viết cuối: 25-11-2022, 03:50 PM
  2. Cho hỏi lệnh tương đương với getch() trong C++
    Gửi bởi ashtxk trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 18
    Bài viết cuối: 14-08-2011, 09:55 AM
  3. Làm thế nào để sử dụng getch() mà không dùng thư viện conio.h
    Gửi bởi fabiano90 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 17
    Bài viết cuối: 26-10-2010, 10:36 PM
  4. Hàm nào tương trong C++ tương đương với getch()
    Gửi bởi the-misery trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 15-05-2008, 12:24 AM
  5. Sử dụng getch() trong lập trình C#
    Gửi bởi neverland87 trong diễn đàn Tutorials và Thủ thuật lập trình C#, ASP.NET
    Trả lời: 2
    Bài viết cuối: 28-06-2007, 09:44 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