Computer >> Máy Tính >  >> Lập trình >> lập trình C

Đối số cưỡng chế trong C / C ++?

Ở đây chúng ta sẽ thấy về sự ép buộc đối số trong C hoặc C ++. Argument Coercion là một kỹ thuật mà trình biên dịch có thể chuyển đổi ngầm các đối số từ kiểu này sang kiểu khác. Nó tuân theo quy tắc xúc tiến đối số. Nếu một đối số là kiểu dữ liệu thấp hơn, đối số đó có thể được chuyển đổi thành kiểu dữ liệu cao hơn, nhưng điều ngược lại là không đúng. Lý do là nếu một loại dữ liệu cao hơn được chuyển đổi thành một loại dữ liệu thấp hơn, nó có thể mất một số dữ liệu.

Hãy để chúng tôi xem một kim tự tháp có thể thể hiện cách chuyển đổi ngầm diễn ra.

Đối số cưỡng chế trong C / C ++?

Ví dụ

#include<iostream>
using namespace std;
double myAdd(double a, double b){
   return a+b;
}
main() {
   cout << "double data add: " << myAdd(5.3, 6.9) << endl;
   cout << "integer data add: " << myAdd(6, 5) << endl;
}

Đầu ra

double data add: 12.2
integer data add: 11