Sự khác biệt chính - getc vs getchar
Một hàm là một tập hợp các câu lệnh để thực hiện một nhiệm vụ cụ thể. Trong lập trình, người dùng có thể xác định các chức năng của mình hoặc sử dụng các chức năng được cung cấp bởi ngôn ngữ lập trình. Ngôn ngữ C có một số hàm, vì vậy lập trình viên có thể sử dụng chúng trực tiếp trong việc viết mã mà không cần thực hiện chúng ngay từ đầu. Có một số chức năng liên quan đến việc đọc ký tự. Hai trong số đó là getc và getchar. Sự khác biệt chính giữa getc và getchar là getc được sử dụng để đọc một ký tự từ một luồng đầu vào chẳng hạn như tệp hoặc đầu vào tiêu chuẩn trong khi getchar là để đọc một ký tự từ đầu vào tiêu chuẩn. Bài viết này thảo luận về sự khác biệt giữa hai chức năng này.
getc là gì?
Đây là một chức năng, được sử dụng để đọc một ký tự từ luồng đầu vào chẳng hạn như tệp hoặc bàn phím. Nó trả về giá trị số nguyên tương ứng khi thành công. Cú pháp của getc là, int getc (Filestream). Tham khảo ví dụ dưới đây. Giả sử rằng test.txt là một tệp văn bản thuần túy trong thư mục dự án. Tệp này có hai ký tự là ‘a’ và ‘b’.
Hình 01: Đọc các ký tự của tệp bằng getc
Theo chương trình trên, tệp thử nghiệm được mở ở chế độ đọc. Sau đó, ký tự đầu tiên được đọc bằng cách sử dụng hàm getc và lưu trữ vào biến c1. Câu lệnh printf xuất ra c1. Sau đó, ký tự thứ hai được đọc và lưu trữ trong biến c2. Câu lệnh printf xuất ra c2. Do đó, hàm getc được sử dụng để đọc một ký tự từ luồng chẳng hạn như tệp.
Hình 02: Đọc các ký tự trong một tệp bằng cách sử dụng getc và vòng lặp.
Nó có thể được sử dụng với một vòng lặp để đọc tất cả các ký tự, từng ký tự một cho đến khi nó đến Cuối tệp (EOF) như trên. Hai ký tự trong tệp test.txt được hiển thị trên màn hình.
getchar () là gì?
getchar () chỉ được sử dụng để đọc một ký tự từ đầu vào chuẩn. Nó đợi cho đến khi phím enter được nhấn và có thể nhìn thấy số đọc trên màn hình. Cú pháp của nó tương tự như int getchar (void);
Hàm getchar không yêu cầu đối số như getc. Theo mặc định, getchar hoạt động cho đầu vào tiêu chuẩn. Do đó, không cần thiết phải truyền bất kỳ đối số nào cho hàm getchar. Tham khảo ví dụ dưới đây.
Hình 03: getchar
Khi người dùng nhập ký tự nhập, ký tự đó sẽ hiển thị trên màn hình và đợi cho đến khi nhấn phím enter. Sau khi nhấn phím enter, kết quả đầu ra được in trên màn hình nhờ chức năng printf.
Chức năng getchar tương tự có thể đạt được bằng cách sử dụng hàm getc như sau.
Hình 04: Chức năng getchar Sử dụng getc
Theo chương trình trên, hàm getc được sử dụng để đọc một ký tự. Nó được lưu trữ trong biến "ch". Hàm getc lập luận stdin để chỉ ra rằng đầu vào được lấy từ đầu vào chuẩn là bàn phím. Người dùng có thể nhập một ký tự và nhấn phím enter. Sau đó, ký tự đó in ra màn hình bằng hàm printf.
Điểm giống nhau giữa getc và getchar là gì?
- Cả hai đều là các hàm được cung cấp bởi ngôn ngữ lập trình C.
- Cả hai hàm đều trả về Kết thúc Tệp (EOF) khi luồng kết thúc.
Sự khác biệt giữa getc và getchar là gì?
getc vs getchar |
|
getc là một hàm C để đọc một ký tự từ luồng đầu vào, chẳng hạn như luồng tệp hoặc đầu vào chuẩn. | getchar là một hàm C để chỉ đọc một ký tự từ luồng nhập chuẩn (stdin) là bàn phím. |
Cú pháp | |
Cú phápgetc tương tự như int getc (Filestream). | Cú phápgetchar tương tự như int getchar (void); |
Tóm tắt - getc vs getchar
Ngôn ngữ lập trình C cung cấp nhiều chức năng. Lập trình viên có thể sử dụng các chức năng này mà không cần thực hiện chúng ngay từ đầu. Hai trong số các hàm như vậy là getc và getchar. Sự khác biệt giữa getc và getchar là getc được sử dụng để đọc một ký tự từ luồng đầu vào chẳng hạn như tệp hoặc đầu vào tiêu chuẩn và getchar là để đọc một ký tự từ đầu vào tiêu chuẩn. Cả hai đều đang sử dụng để đọc một ký tự, nhưng chức năng của chúng khác nhau.
Tải xuống Phiên bản PDF của getc vs getchar
Bạn có thể tải xuống phiên bản PDF của bài viết này và sử dụng nó cho mục đích ngoại tuyến theo ghi chú trích dẫn. Vui lòng tải xuống phiên bản PDF tại đây Sự khác biệt giữa getc và getchar