GiaoTrinhC++(27Jun21)

(Hoang2711) #1
Ngôn ngữ lập trình C++

Tin Học Cho Mọi Người • 39

Để gọi một hàm, bạn viết tên của hàm theo sau là cặp dấu ngoặc đơn () và dấu chấm phẩy ;


Trong ví dụ sau, hàm sayHello() được biên soạn là để in một câu chào. Và trong phần main() lịnh
sayHello() là để gọi nó.


Ví dụ: #include
using namespace std;
void sayHello() { cout << "Hello everyone! Have a good day!\n"; }
int main() { sayHello(); return 0; }
Kết quả: Hello everyone! Have a good day!


Một hàm có thể được gọi nhiều lần.


Ví dụ: #include
using namespace std;
void sayHello() { cout << "Hello everyone! Have a good day!\n"; }
int main() { sayHello(); sayHello(); return 0; }


Kết quả: Hello everyone! Have a good day!Hello everyone! Have a good day!

3. Khai báo và định nghĩa hàm


Hàm C++ bao gồm hai phần:



  • Declaration: Khai báo: tên, loại trả về và tham số của hàm (nếu có)

  • Definition: Định nghĩa: nội dung của hàm (mã sẽ được thực thi)


Cú pháp:


void sayHello() // khai báo
{ cout << "Hello everyone! Have a good day!\n"; } // định nghĩa

Ví dụ: #include
using namespace std;
void sayHello() // khai báo
{ cout << "Hello everyone! Have a good day!\n"; } // định nghĩa
int main() { for (int i = 1; i <= 2; i++)
{ cout << i << ": "; sayHello(); } return 0; }
Kết quả: 1: Hello everyone! Have a good day!2: Hello everyone! Have a good day!


Lưu ý: Nếu hàm người dùng khai báo và định nghĩa, lại được bố trí sau hàm main(), lỗi sẽ xảy ra,
bởi C++ hoạt động từ trên xuống dưới, nếu hàm không được khai báo trên (trước) dòng main(),
chương trình sẽ không biết gì về nó:


Ví dụ: #include
using namespace std;
int main() { sayHello(); return 0; } // main chưa gặp sayHello
void sayHello() // sayHello khai báo sau main()
{ cout << "Hello everyone! Have a good day!\n"; }
Kết quả: error: 'sayHello' was not declared in this scope


Tuy nhiên, có thể tách khai báo và định nghĩa của hàm - để tối ưu hóa khối mã.

Free download pdf