Hướng dẫn advantages and disadvantages of functions in c++ - ưu nhược điểm của hàm trong c++

Định nghĩa chức năng:

Hàm là một thói quen hoặc một tập hợp các lệnh hoặc mã thực hiện một nhiệm vụ cụ thể và có thể được xử lý độc lập.

Khi chương trình chuyển quyền kiểm soát đến một hàm, chức năng thực hiện nhiệm vụ đó và trả lại quyền kiểm soát cho lệnh theo lệnh gọi. Lý do quan trọng nhất để sử dụng chức năng là làm cho việc xử lý chương trình dễ dàng hơn & NBSP; vì chỉ có một phần nhỏ của chương trình được xử lý tại một thời điểm.  as only a small part of the program is dealt with at a time.

Một chức năng là một hộp đen của người Viking mà chúng tôi đã khóa một phần chương trình của chúng tôi. Ý tưởng đằng sau một hàm là nó ngăn cách một phần của chương trình và đặc biệt, mã trong hàm có một số thuộc tính hữu ích.

Ưu điểm của các chức năng:

i) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Chiều dài của & nbsp; Một chương trình nguồn có thể được giảm bằng cách sử dụng các chức năng ở những nơi thích hợp. Yếu tố này đặc biệt quan trọng với các máy vi tính trong đó không gian bộ nhớ bị hạn chế.                     The length of  a source program can be reduced by using functions at appropriate places. This factor is particularly critical with microcomputers where memory space is limited.

ii) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Thật dễ dàng để xác định vị trí và cô lập một chức năng bị lỗi để điều tra thêm.                    It is easy to locate and isolate a faulty function for further investigations.

iii) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Một chức năng có thể được sử dụng bởi nhiều chương trình khác. Điều này có nghĩa là một lập trình viên C có thể xây dựng dựa trên những gì người khác đã làm, thay vì bắt đầu lại từ đầu.                   A function may be used by many other programs. This means that a C programmer can build on what others have already done, instead of starting all over again from scratch.

iv) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Nó tạo điều kiện cho lập trình mô-đun từ trên xuống. Trong phong cách lập trình này, logic cấp cao của vấn đề tổng thể được giải quyết đầu tiên trong khi các chi tiết của từng hàm cấp thấp hơn được giải quyết sau đó.                   It facilitates top-down modular programming. In this programming style, the high level logic of the overall problem is solved first while the details of each lower-level function are addressed later.

v) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Giao diện của nó với phần còn lại của chương trình là sạch sẽ và hẹp.                    Its interface to the rest of the program is clean and narrow.

Nhược điểm của các chức năng:

vi) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Mặc dù việc thêm chức năng người dùng có thể tăng tốc mã được viết tốt nhất bằng C thay vì ngôn ngữ kịch bản, nhưng nó không phải lúc nào cũng là lựa chọn tốt nhất để thực hiện:                   While adding a user function can speed up code that is best written in C rather than a scripting language, it is not always the best choice for implementation:

vii) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Nó đòi hỏi lập trình viên phải thành thạo C, bao gồm con trỏ, con trỏ chức năng, phân bổ bộ nhớ động và gỡ lỗi. Thông thường các nguyên nhân đau đầu C, đặc biệt là đối với người mới, vượt xa mọi khoản tiết kiệm thời gian chạy. Các lỗi trong mã có thể không tự biểu hiện cho đến khi chức năng C kết thúc, khiến việc gỡ lỗi một cơn ác mộng.                 It requires the programmer to be well versed in C, including pointers, function pointers, dynamic memory allocation, and debugging. Often the headaches C causes, especially for the neophyte, far outweigh any run-time savings. Bugs in the code might not manifest themselves until well after the C function ends, making debugging a nightmare.

viii) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Có thể không có bất kỳ lợi thế tốc độ. Vortex khá nhanh tại hầu hết các hoạt động; Đối với các chức năng nhỏ, nó có thể nhanh như vậy - và dễ dàng hơn nhiều - để viết hàm trong xoáy. Vì Vortex đã có các chức năng xử lý dữ liệu mạnh mẽ và khả năng thực hiện các chương trình bên ngoài, nên nó có thể nhanh hơn với mã C trong một chương trình riêng biệt và phân tích nó trong Vortex, đặc biệt là một nguyên mẫu nhanh.                There may not be any speed advantage. Vortex is pretty fast at most operations; for small functions it may be just as fast - and much easier - to write the function in Vortex. Since Vortex already has powerful data processing functions, and the ability to execute external programs, it may be faster to the C code in a separate program and parse it in Vortex, especially as a quick prototype.

ix) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Nó ít di động hơn. Hàm C có nghĩa là phải thực thi Vortex mới phải được thực hiện nếu nền tảng phần cứng thay đổi. Những người dùng Vortex khác sẽ không có chức năng tùy chỉnh trong việc thực thi taxi của họ.                   It's less portable. A C function means a new Vortex executable must be made if the hardware platform changes. Other Vortex users won't have the custom function in their taxis executable.

| Ngày 29 tháng 1 năm 2017 | c Lập trình |January 29, 2017 | c programming |

Một chức năng là một nhóm các câu lệnh được thực thi & nbsp; bất cứ khi nào chức năng được gọi để thực hiện một nhiệm vụ được chỉ định cụ thể.

C Lập trình sử dụng mô -đun để loại bỏ sự phức tạp của một chương trình. Lập trình viên chia chương trình thành các mô -đun hoặc chức năng khác nhau và truy cập các chức năng nhất định khi cần thiết. Mỗi chương trình C có ít nhất một chức năng. Chức năng phổ biến nhất mà chúng tôi sử dụng trong lập trình hàng ngày của chúng tôi là hàm chính (). Trình biên dịch luôn thực thi hàm chính () trước và sau đó là bất kỳ hàm nào khác (nếu nó được gọi từ phương thức chính).modularity to remove the complexity of a program. The programmer divides the program into different modules or functions and accesses certain functions when needed. Every C program has at least one function. The most common function that we use in our day-to-day programming is the main() function. The compiler always executes the main() function first and then any other function(if it is called from the main method).

Một hàm về cơ bản là một khối các câu lệnh thực hiện một nhiệm vụ cụ thể. Giả sử một nhiệm vụ cần được thực hiện liên tục trên nhiều dữ liệu tại các thời điểm khác nhau, như một nhiệm vụ khi bắt đầu chương trình và một ở cuối chương trình, vì vậy thay vì viết cùng một đoạn mã hai lần, một người có thể viết nó trong một chức năng và gọi nó là hai lần. Và sau khi thực hiện bất kỳ khối chức năng nào, điều khiển luôn quay trở lại hàm main ().function is basically a block of statements that performs a particular task. Suppose a task needs to be performed continuously on many data at different points of time, like one at the beginning of the program and one at the end of the program, so instead of writing the same piece of code twice, a person can simply write it in a function and call it twice. And after the execution of any function block, the control always comes back to the main() function.


  • 1. Ưu điểm của việc sử dụng chức năng
  • 2. Các loại chức năng
    • 2.1. Chức năng thư viện
    • 2.2. Các chức năng do người dùng xác định
    • Khuyến khích -

1. Ưu điểm của việc sử dụng chức năng

Dưới đây là một số lợi thế của việc sử dụng các chức năng trong mã của bạn:

  • Việc sử dụng các chức năng giúp tăng cường khả năng đọc của một chương trình. Một mã lớn luôn khó đọc. Phá vỡ mã trong các chức năng nhỏ hơn giữ cho chương trình được tổ chức, dễ hiểu và làm cho nó có thể tái sử dụng.readability of a program. A big code is always difficult to read. Breaking the code in smaller Functions keeps the program organized, easy to understand and makes it reusable.
  • Trình biên dịch C tuân theo thực thi từ trên xuống xuống, do đó luồng điều khiển có thể dễ dàng được quản lý trong trường hợp các chức năng. Điều khiển sẽ luôn quay trở lại hàm Main ().easily managed in case of functions. The control will always come back to the main() function.
  • Nó làm giảm sự phức tạp của một chương trình và cung cấp cho nó một cấu trúc mô -đun.modular structure.
  • Trong trường hợp chúng ta chỉ cần kiểm tra một phần cụ thể của chương trình, chúng ta sẽ phải chạy toàn bộ chương trình và tìm ra các lỗi có thể là một quy trình khá phức tạp. Một lợi thế khác ở đây là các chức năng có thể được kiểm tra riêng lẻ, thuận tiện hơn so với quy trình đã đề cập ở trên.individually tested which is more convenient than the above mentioned process.
  • Một chức năng có thể được sử dụng để tạo tệp tiêu đề của riêng chúng tôi có thể được sử dụng trong bất kỳ số lượng chương trình nào, tức là khả năng tái sử dụng.

Với rất nhiều lợi thế, các chức năng là một lợi ích cho bất kỳ lập trình viên nào. Hãy cùng tìm hiểu thêm về các chức năng này:

2. Các loại chức năng

Ngoài các chức năng mà các lập trình viên tạo theo yêu cầu của họ, các trình biên dịch C còn có một số chức năng tích hợp có thể được sử dụng bất cứ lúc nào bởi lập trình viên. C Ngôn ngữ lập trình có hai loại chức năng:

  • Chức năng/chức năng thư viện tích hợp
  • Các chức năng do người dùng xác định

2.1. Chức năng thư viện

Có các chức năng đã được xác định trong các trình biên dịch C. Chúng được sử dụng để xử lý chuỗi, hoạt động I/O, v.v ... Các chức năng này được xác định trong tệp tiêu đề. Để sử dụng các chức năng này, chúng tôi cần nhập các tệp tiêu đề cụ thể.header file. To use these functions we need to import the specific header files.

Eg:

Hàm thư viện bao gồm các chức năng phổ biến này (cũng có nhiều chức năng khác): includes these common functions(there are many other functions too):

  • printf () hiển thị đầu ra trong định dạng người dùng. shows the output in the user’s format.
  • Scanf () được sử dụng để lấy đầu vào của người dùng có thể là một ký tự, giá trị số, chuỗi, v.v. used to take the user’s input which can be a character, numeric value, string,etc.
  • getchar () lấy đầu vào ký tự từ người dùng. takes character input from the user.
  • Nhận () đọc một dòng. reads a line.

Hàm thư viện & nbsp; bao gồm các chức năng phổ biến này (cũng có nhiều chức năng khác): includes these common functions(there are many other functions too):

  • pow () tìm thấy sức mạnh của số đã cho. finds the power of the given number.
  • Sin () tìm thấy sin của số đã cho. finds the sine of the given number.
  • exp () tìm số mũ của số đã cho. finds the exponent of the given number.
  • cos () tìm cosin của số đã cho. finds the cosine of the given number.
  • sqrt () tìm thấy căn bậc hai của số. finds the square root of the number.
  • log () tìm giá trị logarit của số. finds the logarithmic value of the number.

Ngoài và có nhiều tệp tiêu đề khác chứa các hàm thư viện như có chứa clrscr () và getch (). and there are many other header files that contain library functions such as that contains clrscr() and getch().

2.2. Các chức năng do người dùng xác định

Các chức năng do người dùng xác định là các chức năng được tạo bởi người dùng. Người dùng có thể lập trình để thực hiện bất kỳ chức năng mong muốn nào. Nó giống như tùy chỉnh các chức năng mà chúng ta cần trong một chương trình. Một chương trình có thể có nhiều hơn một chức năng do người dùng xác định. Tất cả các hàm do người dùng xác định cần được gọi (trực tiếp hoặc gián tiếp) bên trong hàm main () để được thực thi. Các chức năng do người dùng xác định có thể được thêm vào chương trình theo hai cách. Thông qua các tệp tiêu đề do người dùng xác định & nbsp; hoặc bằng cách thêm một khối chức năng trực tiếp vào chương trình. Nhưng điều quan trọng nhất là có hàm chính (). Nó làm cho nó dễ dàng hơn để mã hóa và gọi vào các chức năng khác trong cơ thể của nó. are the ones created by the user. The user can program it to perform any desired function.It is like customizing the functions that we need in a program. A program can have more than one user-defined functions. All the user-defined functions need to be called(directly or indirectly) inside the main() function in order to be executed. User-defined functions can be added to the program in two ways. Either through user-defined header files or by adding a function block directly to the program. But the most important thing is to have a main() function. It makes it easier to code and call in other functions in its body.

Bất kỳ chức năng nào cũng có 4 khối xây dựng được khai báo -

  • Tên chức năng
  • Tham số chức năng
  • Loại trở lại
  • Các tuyên bố sẽ được thực thi

Để biết thêm chi tiết về tất cả các khối xây dựng và thông tin đầy đủ về các chức năng, vui lòng đọc bài đăng tiếp theo của & nbsp; các chức năng do người dùng xác định.User Defined Functions.

Đọc thêm:- Tiền xử lý trong ngôn ngữ lập trình Cmore :- Preprocessors in C programming language


Liên kết hữu ích

Vui lòng làm theo hướng dẫn lập trình C hoặc menu trong thanh bên cho chuỗi hướng dẫn hoàn chỉnh.C Programming tutorials or the menu in the sidebar for the complete tutorial series.

Ngoài ra đối với các chương trình C ví dụ, vui lòng tham khảo các ví dụ lập trình C. Tất cả các ví dụ được lưu trữ trên GitHub.C Programming Examples.

All examples are hosted on Github.


Sách được đề xuất


Khoản đầu tư vào kiến ​​thức luôn luôn trả tiền lãi suất tốt nhất. Tôi hy vọng bạn thích hướng dẫn. Hãy quay lại để biết nhiều hơn vì học mở đường để hiểu rõ hơn

Đừng quên chia sẻ và đăng ký.

Mã hóa hạnh phúc !! 😊😊

Khuyến khích -

Những lợi thế của các chức năng trong C là gì?

Ưu điểm của các chức năng trong C bằng cách sử dụng các chức năng, chúng ta có thể tránh viết lại cùng logic/mã nhiều lần trong một chương trình. Chúng tôi có thể gọi các chức năng C bất kỳ số lần trong một chương trình và từ bất kỳ nơi nào trong một chương trình. Chúng ta có thể theo dõi một chương trình C lớn dễ dàng khi nó được chia thành nhiều chức năng.By using functions, we can avoid rewriting same logic/code again and again in a program. We can call C functions any number of times in a program and from any place in a program. We can track a large C program easily when it is divided into multiple functions.

Những nhược điểm của các chức năng trong C là gì?

Nhược điểm chính của việc sử dụng các chức năng là sử dụng các chức năng có nghĩa là bạn đang viết mã thực sự có thể hoạt động thay vì mãi mãi nói về việc viết bằng C và không bao giờ thực sự làm như vậy ...
nội tuyến int add (int a, int b).
trả lại A+B ;.
int main ().
int a = 5, b = 6 ;.
int res = add (thêm (a, b), b) ;.

Những nhược điểm của việc sử dụng các chức năng trong một chương trình là gì?

Năm nhược điểm/nhược điểm của lập trình chức năng..
IO đầu vào/đầu ra (IO) dựa vào các tác dụng phụ, vì vậy nó vốn không có chức năng.....
Đệ quy.....
Vấn đề thuật ngữ.....
Sự không chức năng của máy tính.....
Khó khăn của lập trình trạng thái ..

Những ưu điểm và nhược điểm của lập trình chức năng là gì?

Ưu điểm và nhược điểm của lập trình chức năng.